diff --git a/weapp/src/packages/patrol/index.config.js b/weapp/src/packages/patrol/index.config.js index e69de29b..9b65a793 100644 --- a/weapp/src/packages/patrol/index.config.js +++ b/weapp/src/packages/patrol/index.config.js @@ -0,0 +1,3 @@ +export default { + navigationBarTitleText: '巡查养护' +} \ No newline at end of file diff --git a/weapp/src/packages/patrol/index.jsx b/weapp/src/packages/patrol/index.jsx index d7d8cfd7..fa27ad47 100644 --- a/weapp/src/packages/patrol/index.jsx +++ b/weapp/src/packages/patrol/index.jsx @@ -1,9 +1,246 @@ -import React from 'react' -import { View } from '@tarojs/components'; +import React, { useState, useEffect } from 'react'; +import Taro from '@tarojs/taro'; +import { + View, + RadioGroup, + Radio, + Button, + Image, + Input, + Textarea, + Picker +} from '@tarojs/components'; +import { AtForm, AtInput, AtButton, AtTextarea, AtImagePicker, AtTimeline } from 'taro-ui'; +// import InputPicker from '../components/inputPicker'; +import './index.scss'; +import arrowIcon from '../../static/img/patrol/arrow-down.svg'; const Index = () => { + const [isPatrol, setIsPatrol] = useState(true) // 巡查 or 养护 + const [prjTypeSelector, setPrjTypeSelector] = useState([]) + const [roadSelector, setRoadSelector] = useState([]) + const [projectType, setProjectType] = useState('') + const [road, setRoad] = useState('') + + const [images, setimages] = useState([]) + + const reportType = [ + { + value: '巡查', + text: '巡查', + checked: true + }, + { + value: '养护', + text: '养护', + checked: false + } + ] + + useEffect(() => { + const prjTypeSelector = ['道路', '桥梁', '涵洞', '其他'] + const roadSelector = ['富山一路', '金沙大道', '玉湖路'] + setPrjTypeSelector(prjTypeSelector) + setRoadSelector(roadSelector) + }, []) + + useEffect(() => { + if (projectType) { + setPrjTypeSelector(prjTypeSelector.filter(s => s.includes(projectType))) + } + }, [projectType]) + // useEffect(() => { + // if (projectType) { + // setPrjTypeSelector(prjTypeSelector.filter(s => s.includes(projectType))) + // } + // }, [projectType]) + + function onTypeChange(e) { + if (e.detail.value === '巡查') { + setIsPatrol(true) + } else { + setIsPatrol(false) + } + } + + function onPrjTypeChange(e) { + setProjectType(selector[e.detail.value]) + } + + function onImgPickerChange(files) { + setimages(files) + } + function onImageClick(index, file) { + Taro.previewImage({ + urls: [file.url] // 需要预览的图片http链接列表 + }) + } + + useEffect(() => { + console.log(images); + }, [images]) + return ( - 巡查养护 + + + 上报类型 + + { + reportType.map((item, i) => { + return ( + + {item.text} + + ) + }) + } + + + + + setProjectType(value)} + /> + + + + + + setRoad(value)} + /> + + + + + + {/* + */} + + + + + + + + + + + + + + + + { + isPatrol ? + + 现场图片: + = 3 ? false : true} + files={images} + onChange={onImgPickerChange} + onImageClick={onImageClick} + /> + : + + 养护图片: + + + 养护前 + + + + + 养护中 + + + + + 养护后 + + + + } + + 上报 + + ) } diff --git a/weapp/src/packages/patrol/index.scss b/weapp/src/packages/patrol/index.scss index e69de29b..b7338b0f 100644 --- a/weapp/src/packages/patrol/index.scss +++ b/weapp/src/packages/patrol/index.scss @@ -0,0 +1,116 @@ +.patrol { + height: 100vh; + width: 100vw; + background-color: #f6f6f6; + padding-top: 20px; + + .report-type { + height: 96px; + background-color: #fff; + margin-bottom: 20px; + display: flex; + justify-content: space-between; + align-items: center; + + .text { + margin-left: 30px; + } + + .radio { + margin-right: 30px; + } + } + + .input-picker { + display: flex; + justify-content: space-between; + align-items: center; + background-color: #fff; + margin-bottom: 5px; + + .img-r { + width: 24px; + height: 14px; + margin-right: 30px; + // margin-left: 10px; + } + .img-l { + width: 24px; + height: 14px; + } + } + + .patrol-picker { + background-color: #fff; + padding: 20px; + + } + + .conserve-picker { + background-color: #fff; + padding: 20px; + + .horizontal-line { + height: 30px; + width: 100%; + display: flex; + justify-content: left; + align-items: center; + + .circle { + margin-left: 4px; + width: 22px; + height: 22px; + background-color: #fff; + border-radius: 50%; + } + + .text { + margin-left: 46px; + font-size: 24px; + } + } + .hl-one { + background-color: #DFDFDF; + + .c-one { + border: solid 4px #999999; + } + + .t-one { + color: #999999; + } + } + .hl-two { + background-color: #f7d3a5; + + .c-two { + border: solid 4px #FE9B1C; + } + + .t-two { + color: #FE9B1C; + } + } + .hl-three { + background-color: #a0f3a4; + + .c-three { + border: solid 4px #08D514; + } + + .t-three { + color: #08D514; + } + } + + .img-picker { + margin: 20px; + } + } + + .sub-btn { + width: 70%; + margin-top: 100px; + } +} \ No newline at end of file diff --git a/weapp/src/pages/auth/login/login.scss b/weapp/src/pages/auth/login/login.scss index 647103f5..0a033c69 100644 --- a/weapp/src/pages/auth/login/login.scss +++ b/weapp/src/pages/auth/login/login.scss @@ -1,5 +1,3 @@ -@import "~taro-ui/dist/style/components/divider.scss"; - .page { height: 100vh; background: #fff; diff --git a/weapp/src/pages/home/index.scss b/weapp/src/pages/home/index.scss index 4761576f..d9f40d1e 100644 --- a/weapp/src/pages/home/index.scss +++ b/weapp/src/pages/home/index.scss @@ -1,29 +1,29 @@ .page { - display: flex; - flex-direction: column; - align-items: center; + display: flex; + flex-direction: column; + align-items: center; - .fill { - margin-top: 30px; - padding: 10px; - width: 94%; - height: 360px; - background: url('../../static/img/patrol//fill-bg.svg') no-repeat; - background-size:100% 100%; - } + .fill { + margin-top: 30px; + padding: 10px; + width: 94%; + height: 360px; + background: url('../../static/img/home/fill-bg.svg') no-repeat; + background-size: 100% 100%; + } - .title { - margin: 50px 0 0 48px; - color: #fff; - font-size: 48px; - } + .title { + margin: 50px 0 0 48px; + color: #fff; + font-size: 48px; + } - .btn { - margin: 20px 0 0 50px; - color: #fff; - text-align: center; - width: 200px; - border: solid 1px #fff; - border-radius: 10px; - } + .btn { + margin: 30px 0 0 50px; + color: #fff; + text-align: center; + width: 200px; + border: solid 1px #fff; + border-radius: 10px; + } } \ No newline at end of file diff --git a/weapp/src/pages/user/index.jsx b/weapp/src/pages/user/index.jsx index 6c34502f..781cbb80 100644 --- a/weapp/src/pages/user/index.jsx +++ b/weapp/src/pages/user/index.jsx @@ -5,16 +5,20 @@ import { logout } from '@/actions/auth'; import { getLogoutUrl } from '@/services/api'; import cfg from '../../config'; import './index.scss'; - -import Common from '../../components/echartForWx/common'; - +import headImg from '../../static/img/my/head.png'; +import moreImg from '../../static/img/my/more.svg'; +import pswdImg from '../../static/img/my/pswd.svg'; +import reportImg from '../../static/img/my/report.svg'; const { webUrl } = cfg; - const Index = ({ ...props }) => { const userInfo = Taro.getStorageSync('userInfo') || {}; + const goRedirect = () => { + + } + const onLogout = () => { logout(getLogoutUrl()).then(() => { Taro.reLaunch({ @@ -23,19 +27,33 @@ const Index = ({ ...props }) => { }); } - + console.log(userInfo) return ( - - - - {userInfo.displayName || '----'} + + + + + {userInfo.displayName} + {userInfo.phone} + - - + goRedirect(1)}> + + 我的填报 + + + goRedirect(2)} style={{ marginTop: '2rpx' }}> + + 修改密码 + + + + 退出登录 + ); } diff --git a/weapp/src/pages/user/index.scss b/weapp/src/pages/user/index.scss index 5414ce90..152e5a44 100644 --- a/weapp/src/pages/user/index.scss +++ b/weapp/src/pages/user/index.scss @@ -1,45 +1,92 @@ .page { height: 100vh; background: #F0F2F5; - box-sizing: border-box; - - .personal { - padding: 20px; - - .info { - border-radius: 10px; - background: #fff; - height: 30vh; - display: flex; - flex-direction: column; - align-items: center; - justify-content: center; - - .icon { - width: 150px; - height: 150px; - border-radius: 50%; + display: flex; + flex-direction: column; + + .myBox { + width: 90%; + height: 300rpx; + margin: 30rpx auto; + background: url('../../static/img/my/card-bg.svg') no-repeat; + background-size: 100%; + border-radius: 8rpx; + + .my-top { + overflow: hidden; + padding: 70rpx 0 28rpx 30rpx; + + .my-portrait { + width: 120rpx; + height: 120rpx; + display: block; + float: left; } - .name { - font-size: 30px; - margin-top: 30px; + .my-item { + float: left; + margin-left: 32rpx; + width: 70%; + + .my-username { + font-size: 32rpx; + color: #FFFFFF; + margin-bottom: 24rpx; + margin-top: 6rpx; + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-line-clamp: 2; + overflow: hidden; + } + + .my-phone { + font-size: 28rpx; + font-weight: bold; + color: #FFFFFF; + } } } + } + + .box { + overflow: hidden; + background-color: #fff; + width: 100%; + height: 92rpx; + line-height: 92rpx; + + .box-img { + width: 52rpx; + height: 52rpx; + display: block; + float: left; + padding: 20rpx 20rpx 20rpx 30rpx; + } + .box-txt { + float: left; + font-size: 28rpx; + color: #333333; + } + .img { + width: 52rpx; + height: 52rpx; + display: block; + float: right; + padding: 20rpx 30rpx 20rpx 0; + } } .logout { - box-sizing: border-box; - width: 100vw; - margin-top: 50px; - padding: 0 20px; - - .btn { - background: #fff; - font-size: 28px; - padding: 8px 0; - } + width: 550rpx; + height: 80rpx; + line-height: 80rpx; + background: #346FC2; + border-radius: 8rpx; + font-size: 28rpx; + color: #FFFFFF; + margin: 98rpx auto 0; + text-align: center; } } \ No newline at end of file diff --git a/weapp/src/static/img/patrol/fill-bg.svg b/weapp/src/static/img/home/fill-bg.svg similarity index 100% rename from weapp/src/static/img/patrol/fill-bg.svg rename to weapp/src/static/img/home/fill-bg.svg diff --git a/weapp/src/static/img/my/card-bg.svg b/weapp/src/static/img/my/card-bg.svg new file mode 100644 index 00000000..914f3279 --- /dev/null +++ b/weapp/src/static/img/my/card-bg.svg @@ -0,0 +1,23 @@ + + + 形状结合 + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/weapp/src/static/img/my/head.png b/weapp/src/static/img/my/head.png new file mode 100644 index 00000000..a354ae1a Binary files /dev/null and b/weapp/src/static/img/my/head.png differ diff --git a/weapp/src/static/img/my/more.svg b/weapp/src/static/img/my/more.svg new file mode 100644 index 00000000..fda19b75 --- /dev/null +++ b/weapp/src/static/img/my/more.svg @@ -0,0 +1,13 @@ + + + 切片 + + + + + + + + + + \ No newline at end of file diff --git a/weapp/src/static/img/my/pswd.svg b/weapp/src/static/img/my/pswd.svg new file mode 100644 index 00000000..31bbe81b --- /dev/null +++ b/weapp/src/static/img/my/pswd.svg @@ -0,0 +1,18 @@ + + + 切片 + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/weapp/src/static/img/my/report.svg b/weapp/src/static/img/my/report.svg new file mode 100644 index 00000000..c4cdfc7c --- /dev/null +++ b/weapp/src/static/img/my/report.svg @@ -0,0 +1,14 @@ + + + 切片 + + + + + + + + + + + \ No newline at end of file diff --git a/weapp/src/static/img/patrol/arrow-down.svg b/weapp/src/static/img/patrol/arrow-down.svg new file mode 100644 index 00000000..d543f363 --- /dev/null +++ b/weapp/src/static/img/patrol/arrow-down.svg @@ -0,0 +1,15 @@ + + + chevron-down + + + + + + + + + + + + \ No newline at end of file diff --git a/web/client/assets/color.less b/web/client/assets/color.less index f684d0bc..83d90140 100644 --- a/web/client/assets/color.less +++ b/web/client/assets/color.less @@ -174,7 +174,7 @@ button::-moz-focus-inner, [type='submit']::-moz-focus-inner {border-style: none;} fieldset {border: 0;} legend {color: inherit;} -mark {background-color: color(~`colorPalette("@{table-fixed-header-sort-active-bg}", 1)`);} +mark {background-color: #feffe6;} ::selection {color: #fff;background: @primary-color;} .anticon {color: inherit;} .ant-fade-enter, .ant-fade-appear {animation-fill-mode: both;} @@ -555,18 +555,6 @@ html {--antd-wave-shadow-color: @primary-color;} .ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled], .ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover, .ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus, .ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active {color: @disabled-color;border-color: @border-color-base;background: @disabled-bg;box-shadow: none;} .ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled] > a:only-child, .ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover > a:only-child, .ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus > a:only-child, .ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active > a:only-child {color: currentcolor;} .ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled] > a:only-child::after, .ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:hover > a:only-child::after, .ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:focus > a:only-child::after, .ant-btn-background-ghost.ant-btn-dangerous.ant-btn-link[disabled]:active > a:only-child::after {background: transparent;} -a.ant-btn-disabled, -a.ant-btn-disabled:hover, -a.ant-btn-disabled:focus, -a.ant-btn-disabled:active {color: @disabled-color;border-color: transparent;background: transparent;box-shadow: none;} -a.ant-btn-disabled > a:only-child, -a.ant-btn-disabled:hover > a:only-child, -a.ant-btn-disabled:focus > a:only-child, -a.ant-btn-disabled:active > a:only-child {color: currentcolor;} -a.ant-btn-disabled > a:only-child::after, -a.ant-btn-disabled:hover > a:only-child::after, -a.ant-btn-disabled:focus > a:only-child::after, -a.ant-btn-disabled:active > a:only-child::after {background: transparent;} .ant-btn-group-rtl.ant-btn-group .ant-btn-primary:last-child:not(:first-child), .ant-btn-group-rtl.ant-btn-group .ant-btn-primary + .ant-btn-primary {border-right-color: color(~`colorPalette("@{primary-color}", 5)`);border-left-color: @border-color-base;} .ant-btn-group-rtl.ant-btn-group .ant-btn-primary:last-child:not(:first-child)[disabled], .ant-btn-group-rtl.ant-btn-group .ant-btn-primary + .ant-btn-primary[disabled] {border-right-color: @border-color-base;border-left-color: color(~`colorPalette("@{primary-color}", 5)`);} .ant-picker-calendar {color: @text-color;background: @calendar-full-bg;} @@ -601,6 +589,7 @@ a.ant-btn-disabled:active > a:only-child::after {background: transparent;} .ant-card-type-inner .ant-card-head {background: @background-color-light;} .ant-card-meta-title {color: @heading-color;} .ant-card-meta-description {color: @text-color-secondary;} +.ant-card-loading-block {background: linear-gradient(90deg, fade(@card-skeleton-bg, 20%), fade(@card-skeleton-bg, 40%), fade(@card-skeleton-bg, 20%));background-size: 600% 600%;border-radius: 2px;} .ant-carousel {color: @text-color;} .ant-carousel .slick-slider {-webkit-tap-highlight-color: transparent;} .ant-carousel .slick-prev, .ant-carousel .slick-next {color: transparent;background: transparent;border: 0;} @@ -674,10 +663,8 @@ a.ant-btn-disabled:active > a:only-child::after {background: transparent;} .ant-comment-actions > li > span:hover {color: @comment-action-hover-color;} .ant-picker-status-error.ant-picker, .ant-picker-status-error.ant-picker:not([disabled]):hover {background-color: @input-bg;border-color: #ff4d4f;} .ant-picker-status-error.ant-picker-focused, .ant-picker-status-error.ant-picker:focus {border-color: #ff7875;box-shadow: 0 0 0 2px rgba(255, 77, 79, 0.2);border-right-width: 1px;} -.ant-picker-status-error.ant-picker .ant-picker-active-bar {background: #ff7875;} .ant-picker-status-warning.ant-picker, .ant-picker-status-warning.ant-picker:not([disabled]):hover {background-color: @input-bg;border-color: #faad14;} .ant-picker-status-warning.ant-picker-focused, .ant-picker-status-warning.ant-picker:focus {border-color: #ffc53d;box-shadow: 0 0 0 2px rgba(250, 173, 20, 0.2);border-right-width: 1px;} -.ant-picker-status-warning.ant-picker .ant-picker-active-bar {background: #ffc53d;} .ant-picker {color: @text-color;background: @picker-bg;border: 1px solid @border-color-base;border-radius: 2px;} .ant-picker:hover, .ant-picker-focused {border-color: color(~`colorPalette("@{primary-color}", 5)`);border-right-width: 1px;} .ant-input-rtl .ant-picker:hover, .ant-input-rtl .ant-picker-focused {border-right-width: 0;border-left-width: 1px !important;} @@ -708,7 +695,7 @@ a.ant-btn-disabled:active > a:only-child::after {background: transparent;} .ant-picker-range .ant-picker-active-bar {background: @primary-color;} .ant-picker-dropdown {color: @text-color;} .ant-picker-ranges .ant-picker-preset > .ant-tag-blue {color: @primary-color;background: color(~`colorPalette("@{primary-color}", 1)`);border-color: color(~`colorPalette("@{primary-color}", 3)`);} -.ant-picker-range-arrow {box-shadow: 2px 2px 6px -2px rgba(0, 0, 0, 0.1);border-radius: 0 0 2px;} +.ant-picker-range-arrow {background: linear-gradient(135deg, transparent 40%, @calendar-bg 40%);box-shadow: 2px 2px 6px -2px rgba(0, 0, 0, 0.1);border-radius: 0 0 2px;} .ant-picker-range-arrow::before {background: @calendar-bg;background-repeat: no-repeat;background-position: -10px -10px;} .ant-picker-panel-container {background: @calendar-bg;border-radius: 2px;box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 9px 28px 8px rgba(0, 0, 0, 0.05);} .ant-picker-panel-container .ant-picker-panel {background: transparent;border-width: 0 0 1px 0;border-radius: 0;} @@ -814,7 +801,7 @@ tr > .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::afte .ant-dropdown-menu-item.ant-dropdown-menu-item-danger {color: #ff4d4f;} .ant-dropdown-menu-item.ant-dropdown-menu-item-danger:hover {color: #fff;background-color: #ff4d4f;} .ant-dropdown {color: @text-color;} -.ant-dropdown-arrow {border-radius: 0 0 2px;} +.ant-dropdown-arrow {background: linear-gradient(135deg, transparent 40%, @popover-bg 40%);border-radius: 0 0 2px;} .ant-dropdown-arrow::before {background: @popover-bg;background-repeat: no-repeat;background-position: -10px -10px;} .ant-dropdown-placement-top > .ant-dropdown-arrow, .ant-dropdown-placement-topLeft > .ant-dropdown-arrow, .ant-dropdown-placement-topRight > .ant-dropdown-arrow {box-shadow: 3px 3px 7px -3px rgba(0, 0, 0, 0.1);} .ant-dropdown-placement-bottom > .ant-dropdown-arrow, .ant-dropdown-placement-bottomLeft > .ant-dropdown-arrow, .ant-dropdown-placement-bottomRight > .ant-dropdown-arrow {box-shadow: 2px 2px 5px -2px rgba(0, 0, 0, 0.1);} @@ -949,7 +936,7 @@ tr > .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::afte .ant-input-group.ant-input-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search > .ant-input-group > .ant-input {border-radius: 2px 0 0 2px;} .ant-input-group > .ant-input-rtl:first-child, .ant-input-group-rtl .ant-input-group-addon:first-child {border-radius: 0 2px 2px 0;} .ant-input-group-rtl .ant-input-group-addon:first-child {border-right: 1px solid @border-color-base;border-left: 0;} -.ant-input-group-rtl .ant-input-group-addon:last-child {border-right: 0;border-left: 1px solid @border-color-base;border-radius: 2px 0 0 2px;} +.ant-input-group-rtl .ant-input-group-addon:last-child {border-right: 0;border-left: 1px solid @border-color-base;} .ant-input-group-rtl.ant-input-group > .ant-input:last-child, .ant-input-group-rtl.ant-input-group-addon:last-child {border-radius: 2px 0 0 2px;} .ant-input-group-rtl.ant-input-group .ant-input-affix-wrapper:not(:first-child) {border-radius: 2px 0 0 2px;} .ant-input-group-rtl.ant-input-group .ant-input-affix-wrapper:not(:last-child) {border-radius: 0 2px 2px 0;} @@ -957,10 +944,6 @@ tr > .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::afte .ant-input-group-rtl.ant-input-group.ant-input-group-compact > *:first-child, .ant-input-group-rtl.ant-input-group.ant-input-group-compact > .ant-select:first-child > .ant-select-selector, .ant-input-group-rtl.ant-input-group.ant-input-group-compact > .ant-select-auto-complete:first-child .ant-input, .ant-input-group-rtl.ant-input-group.ant-input-group-compact > .ant-cascader-picker:first-child .ant-input {border-radius: 0 2px 2px 0;} .ant-input-group-rtl.ant-input-group.ant-input-group-compact > *:last-child, .ant-input-group-rtl.ant-input-group.ant-input-group-compact > .ant-select:last-child > .ant-select-selector, .ant-input-group-rtl.ant-input-group.ant-input-group-compact > .ant-select-auto-complete:last-child .ant-input, .ant-input-group-rtl.ant-input-group.ant-input-group-compact > .ant-cascader-picker:last-child .ant-input, .ant-input-group-rtl.ant-input-group.ant-input-group-compact > .ant-cascader-picker-focused:last-child .ant-input {border-left-width: 1px;border-radius: 2px 0 0 2px;} .ant-input-group.ant-input-group-compact .ant-input-group-wrapper-rtl:not(:last-child).ant-input-search > .ant-input-group > .ant-input {border-radius: 0 2px 2px 0;} -.ant-input-group > .ant-input-rtl:first-child {border-radius: 0 2px 2px 0;} -.ant-input-group > .ant-input-rtl:last-child {border-radius: 2px 0 0 2px;} -.ant-input-group-rtl .ant-input-group-addon:first-child {border-right: 1px solid @border-color-base;border-left: 0;border-radius: 0 2px 2px 0;} -.ant-input-group-rtl .ant-input-group-addon:last-child {border-right: 0;border-left: 1px solid @border-color-base;border-radius: 2px 0 0 2px;} .ant-input-password-icon.anticon {color: @text-color-secondary;} .ant-input-password-icon.anticon:hover {color: @input-icon-hover-color;} .ant-input-textarea-show-count::after {color: @text-color-secondary;} @@ -1046,7 +1029,7 @@ tr > .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::afte .ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper:not(:last-child).ant-input-search > .ant-input-group > .ant-input {border-radius: 2px 0 0 2px;} .ant-input-number-group > .ant-input-number-rtl:first-child, .ant-input-number-group-rtl .ant-input-number-group-addon:first-child {border-radius: 0 2px 2px 0;} .ant-input-number-group-rtl .ant-input-number-group-addon:first-child {border-right: 1px solid @border-color-base;border-left: 0;} -.ant-input-number-group-rtl .ant-input-number-group-addon:last-child {border-right: 0;border-left: 1px solid @border-color-base;border-radius: 2px 0 0 2px;} +.ant-input-number-group-rtl .ant-input-number-group-addon:last-child {border-right: 0;border-left: 1px solid @border-color-base;} .ant-input-number-group-rtl.ant-input-number-group > .ant-input-number:last-child, .ant-input-number-group-rtl.ant-input-number-group-addon:last-child {border-radius: 2px 0 0 2px;} .ant-input-number-group-rtl.ant-input-number-group .ant-input-number-affix-wrapper:not(:first-child) {border-radius: 2px 0 0 2px;} .ant-input-number-group-rtl.ant-input-number-group .ant-input-number-affix-wrapper:not(:last-child) {border-radius: 0 2px 2px 0;} @@ -1054,10 +1037,6 @@ tr > .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::afte .ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact > *:first-child, .ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact > .ant-select:first-child > .ant-select-selector, .ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact > .ant-select-auto-complete:first-child .ant-input, .ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact > .ant-cascader-picker:first-child .ant-input {border-radius: 0 2px 2px 0;} .ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact > *:last-child, .ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact > .ant-select:last-child > .ant-select-selector, .ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact > .ant-select-auto-complete:last-child .ant-input, .ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact > .ant-cascader-picker:last-child .ant-input, .ant-input-number-group-rtl.ant-input-number-group.ant-input-number-group-compact > .ant-cascader-picker-focused:last-child .ant-input {border-left-width: 1px;border-radius: 2px 0 0 2px;} .ant-input-number-group.ant-input-number-group-compact .ant-input-group-wrapper-rtl:not(:last-child).ant-input-search > .ant-input-group > .ant-input {border-radius: 0 2px 2px 0;} -.ant-input-number-group > .ant-input-number-rtl:first-child {border-radius: 0 2px 2px 0;} -.ant-input-number-group > .ant-input-number-rtl:last-child {border-radius: 2px 0 0 2px;} -.ant-input-number-group-rtl .ant-input-number-group-addon:first-child {border-right: 1px solid @border-color-base;border-left: 0;border-radius: 0 2px 2px 0;} -.ant-input-number-group-rtl .ant-input-number-group-addon:last-child {border-right: 0;border-left: 1px solid @border-color-base;border-radius: 2px 0 0 2px;} .ant-input-number-handler {color: @text-color-secondary;border-left: 1px solid @border-color-base;} .ant-input-number-handler:active {background: @input-number-handler-active-bg;} .ant-input-number-handler:hover .ant-input-number-handler-up-inner, .ant-input-number-handler:hover .ant-input-number-handler-down-inner {color: color(~`colorPalette("@{primary-color}", 5)`);} @@ -1149,10 +1128,10 @@ tr > .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::afte .ant-mentions-dropdown-menu-item-active {background-color: @item-hover-bg;} .ant-menu-item-danger.ant-menu-item {color: #ff4d4f;} .ant-menu-item-danger.ant-menu-item:hover, .ant-menu-item-danger.ant-menu-item-active {color: #ff4d4f;} -.ant-menu-item-danger.ant-menu-item:active {background: color(~`colorPalette("@{radio-dot-disabled-color}", 1)`);} +.ant-menu-item-danger.ant-menu-item:active {background: color(~`colorPalette("@{menu-popup-bg}", 2)`);} .ant-menu-item-danger.ant-menu-item-selected {color: #ff4d4f;} .ant-menu-item-danger.ant-menu-item-selected > a, .ant-menu-item-danger.ant-menu-item-selected > a:hover {color: #ff4d4f;} -.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected {background-color: color(~`colorPalette("@{radio-dot-disabled-color}", 1)`);} +.ant-menu:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected {background-color: color(~`colorPalette("@{menu-popup-bg}", 2)`);} .ant-menu-inline .ant-menu-item-danger.ant-menu-item::after {border-right-color: #ff4d4f;} .ant-menu-dark .ant-menu-item-danger.ant-menu-item, .ant-menu-dark .ant-menu-item-danger.ant-menu-item:hover, .ant-menu-dark .ant-menu-item-danger.ant-menu-item > a {color: #ff4d4f;} .ant-menu-dark.ant-menu-dark:not(.ant-menu-horizontal) .ant-menu-item-danger.ant-menu-item-selected {color: #fff;background-color: #ff4d4f;} @@ -1313,8 +1292,8 @@ tr > .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::afte .ant-pagination-simple .ant-pagination-simple-pager input:hover {border-color: @primary-color;} .ant-pagination-simple .ant-pagination-simple-pager input:focus {border-color: color(~`colorPalette("@{primary-color}", 5)`);box-shadow: 0 0 0 2px fade(@primary-color, 20%);} .ant-pagination-simple .ant-pagination-simple-pager input[disabled] {color: @disabled-color;background: @disabled-bg;border-color: @border-color-base;} -.ant-pagination.ant-pagination-mini .ant-pagination-item:not(.ant-pagination-item-active) {background: transparent;border-color: transparent;} -.ant-pagination.ant-pagination-mini .ant-pagination-prev .ant-pagination-item-link, .ant-pagination.ant-pagination-mini .ant-pagination-next .ant-pagination-item-link {background: transparent;border-color: transparent;} +.ant-pagination.mini .ant-pagination-item:not(.ant-pagination-item-active) {background: transparent;border-color: transparent;} +.ant-pagination.mini .ant-pagination-prev .ant-pagination-item-link, .ant-pagination.mini .ant-pagination-next .ant-pagination-item-link {background: transparent;border-color: transparent;} .ant-pagination.ant-pagination-disabled .ant-pagination-item {background: @disabled-bg;border-color: @border-color-base;} .ant-pagination.ant-pagination-disabled .ant-pagination-item a {color: @disabled-color;background: transparent;border: none;} .ant-pagination.ant-pagination-disabled .ant-pagination-item-active {background: @pagination-item-disabled-bg-active;} @@ -1330,8 +1309,8 @@ tr > .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::afte .ant-popover-message {color: @text-color;} .ant-popover-message > .anticon {color: #faad14;} .ant-popover-arrow {background: transparent;} -.ant-popover-arrow-content {--antd-arrow-background-color: @popover-bg;border-radius: 0 0 2px;} -.ant-popover-arrow-content::before {background: var(--antd-arrow-background-color);background-repeat: no-repeat;background-position: -10px -10px;} +.ant-popover-arrow-content {background-color: @popover-bg;border-radius: 0 0 2px;} +.ant-popover-arrow-content::before {background: @popover-bg;background-repeat: no-repeat;background-position: -10px -10px;} .ant-popover-placement-top .ant-popover-arrow-content, .ant-popover-placement-topLeft .ant-popover-arrow-content, .ant-popover-placement-topRight .ant-popover-arrow-content {box-shadow: 3px 3px 7px rgba(0, 0, 0, 0.07);} .ant-popover-placement-right .ant-popover-arrow-content, .ant-popover-placement-rightTop .ant-popover-arrow-content, .ant-popover-placement-rightBottom .ant-popover-arrow-content {box-shadow: 3px 3px 7px rgba(0, 0, 0, 0.07);} .ant-popover-placement-bottom .ant-popover-arrow-content, .ant-popover-placement-bottomLeft .ant-popover-arrow-content, .ant-popover-placement-bottomRight .ant-popover-arrow-content {box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.06);} @@ -1387,13 +1366,12 @@ tr > .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::afte .ant-radio-wrapper {color: @text-color;} .ant-radio {color: @text-color;} .ant-radio-wrapper:hover .ant-radio, .ant-radio:hover .ant-radio-inner, .ant-radio-input:focus + .ant-radio-inner {border-color: @primary-color;} -.ant-radio-input:focus + .ant-radio-inner {box-shadow: 0 0 0 3px fade(@primary-color, 12%);} +.ant-radio-input:focus + .ant-radio-inner {box-shadow: 0 0 0 3px color(~`colorPalette("@{primary-color}", 1)`);} .ant-radio-checked::after {border: 1px solid @primary-color;border-radius: 50%;animation-fill-mode: both;} .ant-radio-inner {background-color: @btn-default-bg;border-color: @border-color-base;border-style: solid;border-width: 1px;border-radius: 50%;} .ant-radio-inner::after {background-color: @primary-color;border-top: 0;border-left: 0;border-radius: 16px;} -.ant-radio.ant-radio-disabled .ant-radio-inner {border-color: @border-color-base;} .ant-radio-checked .ant-radio-inner {border-color: @primary-color;} -.ant-radio-disabled .ant-radio-inner {background-color: @disabled-bg;} +.ant-radio-disabled .ant-radio-inner {background-color: @disabled-bg;border-color: @border-color-base !important;} .ant-radio-disabled .ant-radio-inner::after {background-color: @radio-dot-disabled-color;} .ant-radio-disabled + span {color: @disabled-color;} .ant-radio-button-wrapper {color: @text-color;background: @btn-default-bg;border: 1px solid @border-color-base;border-top-width: 1.02px;border-left-width: 0;} @@ -1403,7 +1381,7 @@ tr > .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::afte .ant-radio-button-wrapper:last-child {border-radius: 0 2px 2px 0;} .ant-radio-button-wrapper:first-child:last-child {border-radius: 2px;} .ant-radio-button-wrapper:hover {color: @primary-color;} -.ant-radio-button-wrapper:focus-within {box-shadow: 0 0 0 3px fade(@primary-color, 12%);} +.ant-radio-button-wrapper:focus-within {box-shadow: 0 0 0 3px color(~`colorPalette("@{primary-color}", 1)`);} .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled) {color: @primary-color;background: @btn-default-bg;border-color: @primary-color;} .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled)::before {background-color: @primary-color;} .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):first-child {border-color: @primary-color;} @@ -1411,11 +1389,11 @@ tr > .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::afte .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover::before {background-color: color(~`colorPalette("@{primary-color}", 5)`);} .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active {color: color(~`colorPalette("@{primary-color}", 7)`);border-color: color(~`colorPalette("@{primary-color}", 7)`);} .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active::before {background-color: color(~`colorPalette("@{primary-color}", 7)`);} -.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within {box-shadow: 0 0 0 3px fade(@primary-color, 12%);} +.ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within {box-shadow: 0 0 0 3px color(~`colorPalette("@{primary-color}", 1)`);} .ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled) {color: @radio-solid-checked-color;background: @primary-color;border-color: @primary-color;} .ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):hover {color: @radio-solid-checked-color;background: color(~`colorPalette("@{primary-color}", 5)`);border-color: color(~`colorPalette("@{primary-color}", 5)`);} .ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):active {color: @radio-solid-checked-color;background: color(~`colorPalette("@{primary-color}", 7)`);border-color: color(~`colorPalette("@{primary-color}", 7)`);} -.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within {box-shadow: 0 0 0 3px fade(@primary-color, 12%);} +.ant-radio-group-solid .ant-radio-button-wrapper-checked:not(.ant-radio-button-wrapper-disabled):focus-within {box-shadow: 0 0 0 3px color(~`colorPalette("@{primary-color}", 1)`);} .ant-radio-button-wrapper-disabled {color: @disabled-color;background-color: @disabled-bg;border-color: @border-color-base;} .ant-radio-button-wrapper-disabled:first-child, .ant-radio-button-wrapper-disabled:hover {color: @disabled-color;background-color: @disabled-bg;border-color: @border-color-base;} .ant-radio-button-wrapper-disabled:first-child {border-left-color: @border-color-base;} @@ -1482,11 +1460,14 @@ tr > .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::afte .ant-skeleton-header .ant-skeleton-avatar.ant-skeleton-avatar-circle {border-radius: 50%;} .ant-skeleton-header .ant-skeleton-avatar-lg.ant-skeleton-avatar-circle {border-radius: 50%;} .ant-skeleton-header .ant-skeleton-avatar-sm.ant-skeleton-avatar-circle {border-radius: 50%;} -.ant-skeleton-content .ant-skeleton-title {background: @skeleton-color;border-radius: 2px;} -.ant-skeleton-content .ant-skeleton-paragraph > li {background: @skeleton-color;border-radius: 2px;} +.ant-skeleton-content .ant-skeleton-title {background: @skeleton-color;border-radius: 4px;} +.ant-skeleton-content .ant-skeleton-paragraph > li {background: @skeleton-color;border-radius: 4px;} .ant-skeleton-round .ant-skeleton-content .ant-skeleton-title, .ant-skeleton-round .ant-skeleton-content .ant-skeleton-paragraph > li {border-radius: 100px;} -.ant-skeleton-active .ant-skeleton-title, .ant-skeleton-active .ant-skeleton-paragraph > li, .ant-skeleton-active .ant-skeleton-avatar, .ant-skeleton-active .ant-skeleton-button, .ant-skeleton-active .ant-skeleton-input, .ant-skeleton-active .ant-skeleton-image {background: transparent;} -.ant-skeleton-active .ant-skeleton-title::after, .ant-skeleton-active .ant-skeleton-paragraph > li::after, .ant-skeleton-active .ant-skeleton-avatar::after, .ant-skeleton-active .ant-skeleton-button::after, .ant-skeleton-active .ant-skeleton-input::after, .ant-skeleton-active .ant-skeleton-image::after {background: linear-gradient(90deg, @skeleton-color 25%, @skeleton-to-color 37%, @skeleton-color 63%);} +.ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-title, .ant-skeleton.ant-skeleton-active .ant-skeleton-content .ant-skeleton-paragraph > li {background: linear-gradient(90deg, @skeleton-color 25%, @skeleton-to-color 37%, @skeleton-color 63%);background-size: 400% 100%;} +.ant-skeleton.ant-skeleton-active .ant-skeleton-avatar {background: linear-gradient(90deg, @skeleton-color 25%, @skeleton-to-color 37%, @skeleton-color 63%);background-size: 400% 100%;} +.ant-skeleton.ant-skeleton-active .ant-skeleton-button {background: linear-gradient(90deg, @skeleton-color 25%, @skeleton-to-color 37%, @skeleton-color 63%);background-size: 400% 100%;} +.ant-skeleton.ant-skeleton-active .ant-skeleton-input {background: linear-gradient(90deg, @skeleton-color 25%, @skeleton-to-color 37%, @skeleton-color 63%);background-size: 400% 100%;} +.ant-skeleton.ant-skeleton-active .ant-skeleton-image {background: linear-gradient(90deg, @skeleton-color 25%, @skeleton-to-color 37%, @skeleton-color 63%);background-size: 400% 100%;} .ant-skeleton-element .ant-skeleton-button {background: @skeleton-color;border-radius: 2px;} .ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-circle {border-radius: 50%;} .ant-skeleton-element .ant-skeleton-button.ant-skeleton-button-round {border-radius: 32px;} @@ -1603,7 +1584,7 @@ tr > .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::afte .ant-table.ant-table-bordered.ant-table-scroll-horizontal > .ant-table-container > .ant-table-body > table > tbody > tr.ant-table-expanded-row > td, .ant-table.ant-table-bordered.ant-table-scroll-horizontal > .ant-table-container > .ant-table-body > table > tbody > tr.ant-table-placeholder > td {border-right: 0;} .ant-table.ant-table-bordered > .ant-table-footer {border: 1px solid @border-color-split;border-top: 0;} .ant-table-cell .ant-table-container:first-child {border-top: 0;} -.ant-table-cell-scrollbar:not([rowspan]) {box-shadow: 0 1px 0 1px @table-header-bg;} +.ant-table-cell-scrollbar {box-shadow: 0 1px 0 1px @table-header-bg;} .ant-table {color: @text-color;background: @component-background;border-radius: 2px;} .ant-table table {border-radius: 2px 2px 0 0;border-collapse: separate;border-spacing: 0;} .ant-table-footer {color: @heading-color;background: @background-color-light;} @@ -1654,10 +1635,10 @@ tr.ant-table-expanded-row:hover > td {background: @table-expanded-row-bg;} .ant-table-empty .ant-table-tbody > tr.ant-table-placeholder {color: @disabled-color;} .ant-table-tbody > tr.ant-table-placeholder:hover > td {background: @component-background;} .ant-table-cell-fix-left, .ant-table-cell-fix-right {background: @component-background;} -.ant-table-ping-left:not(.ant-table-has-fix-left) > .ant-table-container::before {box-shadow: inset 10px 0 8px -8px darken(@shadow-color, 5%);} +.ant-table-ping-left:not(.ant-table-has-fix-left) .ant-table-container::before {box-shadow: inset 10px 0 8px -8px darken(@shadow-color, 5%);} .ant-table-ping-left .ant-table-cell-fix-left-first::after, .ant-table-ping-left .ant-table-cell-fix-left-last::after {box-shadow: inset 10px 0 8px -8px darken(@shadow-color, 5%);} .ant-table-ping-left .ant-table-cell-fix-left-last::before {background-color: transparent !important;} -.ant-table-ping-right:not(.ant-table-has-fix-right) > .ant-table-container::after {box-shadow: inset -10px 0 8px -8px darken(@shadow-color, 5%);} +.ant-table-ping-right:not(.ant-table-has-fix-right) .ant-table-container::after {box-shadow: inset -10px 0 8px -8px darken(@shadow-color, 5%);} .ant-table-ping-right .ant-table-cell-fix-right-first::after, .ant-table-ping-right .ant-table-cell-fix-right-last::after {box-shadow: inset -10px 0 8px -8px darken(@shadow-color, 5%);} .ant-table-sticky-holder {background: @component-background;} .ant-table-sticky-scroll {background: lighten(@table-border-color, 80%);border-top: 1px solid @border-color-split;} @@ -1666,7 +1647,6 @@ tr.ant-table-expanded-row:hover > td {background: @table-expanded-row-bg;} .ant-table-sticky-scroll-bar-active {background-color: fade(@table-sticky-scroll-bar-bg, 80%);} .ant-table-title {border-radius: 2px 2px 0 0;} .ant-table-title + .ant-table-container {border-top-left-radius: 0;border-top-right-radius: 0;} -.ant-table-title + .ant-table-container table {border-radius: 0;} .ant-table-title + .ant-table-container table > thead > tr:first-child th:first-child {border-radius: 0;} .ant-table-title + .ant-table-container table > thead > tr:first-child th:last-child {border-radius: 0;} .ant-table-container {border-top-left-radius: 2px;border-top-right-radius: 2px;} @@ -1722,31 +1702,43 @@ tr.ant-table-expanded-row:hover > td {background: @table-expanded-row-bg;} .ant-tag-checkable:active, .ant-tag-checkable-checked {color: #fff;} .ant-tag-checkable-checked {background-color: @primary-color;} .ant-tag-checkable:active {background-color: color(~`colorPalette("@{primary-color}", 7)`);} -.ant-tag-pink {color: #c41d7f;background: color(~`colorPalette("@{alert-info-bg-color}", 1)`);border-color: #ffadd2;} +<<<<<<< HEAD +.ant-tag-pink {color: #c41d7f;background: color(~`colorPalette("@{modal-footer-border-color-split}", 1)`);border-color: #ffadd2;} .ant-tag-pink-inverse {color: #fff;background: #eb2f96;border-color: #eb2f96;} -.ant-tag-magenta {color: #c41d7f;background: color(~`colorPalette("@{alert-info-bg-color}", 1)`);border-color: #ffadd2;} +.ant-tag-magenta {color: #c41d7f;background: color(~`colorPalette("@{modal-footer-border-color-split}", 1)`);border-color: #ffadd2;} +======= +.ant-tag-pink {color: #c41d7f;background: color(~`colorPalette("@{timeline-color}", 4)`);border-color: #ffadd2;} +.ant-tag-pink-inverse {color: #fff;background: #eb2f96;border-color: #eb2f96;} +.ant-tag-magenta {color: #c41d7f;background: color(~`colorPalette("@{timeline-color}", 4)`);border-color: #ffadd2;} +>>>>>>> 65cf2722eec21e1d07ce958f4298eec7ae620c85 .ant-tag-magenta-inverse {color: #fff;background: #eb2f96;border-color: #eb2f96;} -.ant-tag-red {color: #cf1322;background: color(~`colorPalette("@{radio-dot-disabled-color}", 1)`);border-color: #ffa39e;} +.ant-tag-red {color: #cf1322;background: color(~`colorPalette("@{menu-popup-bg}", 2)`);border-color: #ffa39e;} .ant-tag-red-inverse {color: #fff;background: #f5222d;border-color: #f5222d;} .ant-tag-volcano {color: #d4380d;background: #fff2e8;border-color: #ffbb96;} .ant-tag-volcano-inverse {color: #fff;background: #fa541c;border-color: #fa541c;} .ant-tag-orange {color: #d46b08;background: #fff7e6;border-color: #ffd591;} .ant-tag-orange-inverse {color: #fff;background: #fa8c16;border-color: #fa8c16;} -.ant-tag-yellow {color: #d4b106;background: color(~`colorPalette("@{table-fixed-header-sort-active-bg}", 1)`);border-color: #fffb8f;} +.ant-tag-yellow {color: #d4b106;background: #feffe6;border-color: #fffb8f;} .ant-tag-yellow-inverse {color: #fff;background: #fadb14;border-color: #fadb14;} -.ant-tag-gold {color: #d48806;background: #fffbe6;border-color: #ffe58f;} +.ant-tag-gold {color: #d48806;background: color(~`colorPalette("@{skeleton-color}", 1)`);border-color: #ffe58f;} .ant-tag-gold-inverse {color: #fff;background: #faad14;border-color: #faad14;} -.ant-tag-cyan {color: #08979c;background: color(~`colorPalette("@{avatar-bg}", 1)`);border-color: #87e8de;} +.ant-tag-cyan {color: #08979c;background: #e6fffb;border-color: #87e8de;} .ant-tag-cyan-inverse {color: #fff;background: #13c2c2;border-color: #13c2c2;} .ant-tag-lime {color: #7cb305;background: #fcffe6;border-color: #eaff8f;} .ant-tag-lime-inverse {color: #fff;background: #a0d911;border-color: #a0d911;} .ant-tag-green {color: #389e0d;background: #f6ffed;border-color: #b7eb8f;} .ant-tag-green-inverse {color: #fff;background: #52c41a;border-color: #52c41a;} -.ant-tag-blue {color: #096dd9;background: color(~`colorPalette("@{radio-dot-disabled-color}", 1)`);border-color: #91d5ff;} +.ant-tag-blue {color: #096dd9;background: color(~`colorPalette("@{progress-steps-item-bg}", 1)`);border-color: #91d5ff;} .ant-tag-blue-inverse {color: #fff;background: #1890ff;border-color: #1890ff;} -.ant-tag-geekblue {color: #1d39c4;background: color(~`colorPalette("@{descriptions-bg}", 2)`);border-color: #adc6ff;} +<<<<<<< HEAD +.ant-tag-geekblue {color: #1d39c4;background: color(~`colorPalette("@{success-color-deprecated-border}", 1)`);border-color: #adc6ff;} +.ant-tag-geekblue-inverse {color: #fff;background: #2f54eb;border-color: #2f54eb;} +.ant-tag-purple {color: #531dab;background: color(~`colorPalette("@{progress-steps-item-bg}", 3)`);border-color: #d3adf7;} +======= +.ant-tag-geekblue {color: #1d39c4;background: color(~`colorPalette("@{popover-background}", 3)`);border-color: #adc6ff;} .ant-tag-geekblue-inverse {color: #fff;background: #2f54eb;border-color: #2f54eb;} -.ant-tag-purple {color: #531dab;background: color(~`colorPalette("@{calendar-bg}", 1)`);border-color: #d3adf7;} +.ant-tag-purple {color: #531dab;background: #f9f0ff;border-color: #d3adf7;} +>>>>>>> 65cf2722eec21e1d07ce958f4298eec7ae620c85 .ant-tag-purple-inverse {color: #fff;background: #722ed1;border-color: #722ed1;} .ant-tag-success {color: #52c41a;background: @success-color-deprecated-bg;border-color: @success-color-deprecated-border;} .ant-tag-processing {color: @primary-color;background: @info-color-deprecated-bg;border-color: @info-color-deprecated-border;} @@ -1769,7 +1761,7 @@ tr.ant-table-expanded-row:hover > td {background: @table-expanded-row-bg;} .ant-tooltip {color: @text-color;} .ant-tooltip-inner {color: #fff;background-color: @tooltip-bg;border-radius: 2px;box-shadow: 0 3px 6px -4px rgba(0, 0, 0, 0.12), 0 6px 16px 0 rgba(0, 0, 0, 0.08), 0 9px 28px 8px rgba(0, 0, 0, 0.05);} .ant-tooltip-arrow {background: transparent;} -.ant-tooltip-arrow-content {--antd-arrow-background-color: linear-gradient(to right bottom, fadeout(@tooltip-bg, 10%), @tooltip-bg);border-radius: 0 0 2px;} +.ant-tooltip-arrow-content {--antd-arrow-background-color: linear-gradient(to right bottom, fadeout(@tooltip-bg, 10%), @tooltip-bg);background-color: transparent;border-radius: 0 0 2px;} .ant-tooltip-arrow-content::before {background: var(--antd-arrow-background-color);background-repeat: no-repeat;background-position: -10px -10px;} .ant-tooltip-placement-top .ant-tooltip-arrow-content, .ant-tooltip-placement-topLeft .ant-tooltip-arrow-content, .ant-tooltip-placement-topRight .ant-tooltip-arrow-content {box-shadow: 3px 3px 7px rgba(0, 0, 0, 0.07);} .ant-tooltip-placement-right .ant-tooltip-arrow-content, .ant-tooltip-placement-rightTop .ant-tooltip-arrow-content, .ant-tooltip-placement-rightBottom .ant-tooltip-arrow-content {box-shadow: -3px 3px 7px rgba(0, 0, 0, 0.07);} @@ -1959,7 +1951,6 @@ a.ant-typography.ant-typography-disabled:hover, .ant-typography a.ant-typography .ant-typography pre code {background: transparent;border: 0;} .ant-typography blockquote {border-left: 4px solid rgba(100, 100, 100, 0.2);} .ant-upload {color: @text-color;} -.ant-upload.ant-upload-disabled {color: @disabled-color;} .ant-upload.ant-upload-select-picture-card {background-color: @background-color-light;border: 1px dashed @border-color-base;border-radius: 2px;} .ant-upload.ant-upload-select-picture-card:hover {border-color: @primary-color;} .ant-upload-disabled.ant-upload.ant-upload-select-picture-card:hover {border-color: @border-color-base;} @@ -1984,12 +1975,13 @@ a.ant-typography.ant-typography-disabled:hover, .ant-typography a.ant-typography .ant-upload-list-picture .ant-upload-list-item-error, .ant-upload-list-picture-card .ant-upload-list-item-error {border-color: #ff4d4f;} .ant-upload-list-picture .ant-upload-list-item:hover .ant-upload-list-item-info, .ant-upload-list-picture-card .ant-upload-list-item:hover .ant-upload-list-item-info {background: transparent;} .ant-upload-list-picture .ant-upload-list-item-uploading, .ant-upload-list-picture-card .ant-upload-list-item-uploading {border-style: dashed;} -.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='color(~`colorPalette("@{radio-dot-disabled-color}", 1)`)'], .ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='color(~`colorPalette("@{radio-dot-disabled-color}", 1)`)'] {fill: @error-color-deprecated-bg;} +.ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='color(~`colorPalette("@{progress-steps-item-bg}", 1)`)'], .ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='color(~`colorPalette("@{progress-steps-item-bg}", 1)`)'] {fill: @error-color-deprecated-bg;} .ant-upload-list-picture .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#1890ff'], .ant-upload-list-picture-card .ant-upload-list-item-error .ant-upload-list-item-thumbnail .anticon svg path[fill='#1890ff'] {fill: #ff4d4f;} .ant-upload-list-picture-card .ant-upload-list-item-info::before {background-color: rgba(0, 0, 0, 0.5);} .ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye, .ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download, .ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete {color: rgba(255, 255, 255, 0.85);} .ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-eye:hover, .ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-download:hover, .ant-upload-list-picture-card .ant-upload-list-item-actions .anticon-delete:hover {color: #fff;} .ant-upload-list-picture-card .ant-upload-list-item-uploading.ant-upload-list-item {background-color: @background-color-light;} +.ant-upload-list .ant-upload-animate-inline-appear, .ant-upload-list .ant-upload-animate-inline-enter, .ant-upload-list .ant-upload-animate-inline-leave {animation-fill-mode: cubic-bezier(0.78, 0.14, 0.15, 0.86);} .ant-pro-table-search {background-color: @component-background !important;} .bezierEasingMixin() { @functions: ~`(function() {var NEWTON_ITERATIONS = 4;var NEWTON_MIN_SLOPE = 0.001;var SUBDIVISION_PRECISION = 0.0000001;var SUBDIVISION_MAX_ITERATIONS = 10;var kSplineTableSize = 11;var kSampleStepSize = 1.0 / (kSplineTableSize - 1.0);var float32ArraySupported = typeof Float32Array === 'function';function A (aA1, aA2) { return 1.0 - 3.0 * aA2 + 3.0 * aA1; } @@ -2439,8 +2431,7 @@ this.tinycolor = tinycolor;})()`;} .colorPaletteMixin() { @functions: ~`(function() {var hueStep = 2;var saturationStep = 0.16;var saturationStep2 = 0.05;var brightnessStep1 = 0.05;var brightnessStep2 = 0.15;var lightColorCount = 5;var darkColorCount = 4;var getHue = function(hsv, i, isLight) {var hue;if (hsv.h >= 60 && hsv.h <= 240) {hue = isLight ? hsv.h - hueStep * i : hsv.h + hueStep * i;} else {hue = isLight ? hsv.h + hueStep * i : hsv.h - hueStep * i;} if (hue < 0) {hue += 360;} else if (hue >= 360) {hue -= 360;} - return Math.round(hue);};var getSaturation = function(hsv, i, isLight) {if (hsv.h === 0 && hsv.s === 0) {return hsv.s;} - var saturation;if (isLight) {saturation = hsv.s - saturationStep * i;} else if (i === darkColorCount) {saturation = hsv.s + saturationStep;} else {saturation = hsv.s + saturationStep2 * i;} + return Math.round(hue);};var getSaturation = function(hsv, i, isLight) {var saturation;if (isLight) {saturation = hsv.s - saturationStep * i;} else if (i === darkColorCount) {saturation = hsv.s + saturationStep;} else {saturation = hsv.s + saturationStep2 * i;} if (saturation > 1) {saturation = 1;} if (isLight && i === lightColorCount && saturation > 0.1) {saturation = 0.1;} if (saturation < 0.06) {saturation = 0.06;} @@ -2897,7 +2888,7 @@ this.tinycolor = tinycolor;})()`;} @cascader-dropdown-line-height: @dropdown-line-height; @anchor-bg: transparent; @anchor-border-color: @border-color-split; -@anchor-link-top: 4px; +@anchor-link-top: 7px; @anchor-link-left: 16px; @anchor-link-padding: @anchor-link-top 0 @anchor-link-top @anchor-link-left; @tooltip-max-width: 250px; @@ -2922,7 +2913,7 @@ this.tinycolor = tinycolor;})()`;} @modal-header-border-style: @border-style-base; @modal-header-title-line-height: 22px; @modal-header-title-font-size: @font-size-lg; -@modal-header-close-size: @modal-header-title-line-height + 2 * @modal-header-padding-vertical; +@modal-header-close-size: 56px; @modal-heading-color: @heading-color; @modal-close-color: @text-color-secondary; @modal-footer-bg: transparent; @@ -2933,7 +2924,6 @@ this.tinycolor = tinycolor;})()`;} @modal-mask-bg: fade(@black, 45%); @modal-confirm-body-padding: 32px 32px 24px; @modal-confirm-title-font-size: @font-size-lg; -@modal-border-radius: @border-radius-base; @progress-default-color: @processing-color; @progress-remaining-color: @background-color-base; @progress-info-text-color: @progress-text-color; diff --git a/web/client/assets/images/leadership/di.png b/web/client/assets/images/leadership/di.png new file mode 100644 index 00000000..82da9cd7 Binary files /dev/null and b/web/client/assets/images/leadership/di.png differ diff --git a/web/client/assets/images/leadership/jiejue.png b/web/client/assets/images/leadership/jiejue.png new file mode 100644 index 00000000..fe38485c Binary files /dev/null and b/web/client/assets/images/leadership/jiejue.png differ diff --git a/web/client/assets/images/leadership/mingri.png b/web/client/assets/images/leadership/mingri.png new file mode 100644 index 00000000..3699687a Binary files /dev/null and b/web/client/assets/images/leadership/mingri.png differ diff --git a/web/client/assets/images/leadership/pingshi.png b/web/client/assets/images/leadership/pingshi.png new file mode 100644 index 00000000..9fb3a859 Binary files /dev/null and b/web/client/assets/images/leadership/pingshi.png differ diff --git a/web/client/assets/images/leadership/road.png b/web/client/assets/images/leadership/road.png new file mode 100644 index 00000000..3ac9c233 Binary files /dev/null and b/web/client/assets/images/leadership/road.png differ diff --git a/web/client/assets/images/leadership/shiyantu.png b/web/client/assets/images/leadership/shiyantu.png new file mode 100644 index 00000000..a8ed7993 Binary files /dev/null and b/web/client/assets/images/leadership/shiyantu.png differ diff --git a/web/client/assets/images/leadership/zibiaoti.png b/web/client/assets/images/leadership/zibiaoti.png new file mode 100644 index 00000000..333214a9 Binary files /dev/null and b/web/client/assets/images/leadership/zibiaoti.png differ diff --git a/web/client/src/sections/fillion/actions/infor.js b/web/client/src/sections/fillion/actions/infor.js index 17872957..d68042e8 100644 --- a/web/client/src/sections/fillion/actions/infor.js +++ b/web/client/src/sections/fillion/actions/infor.js @@ -11,14 +11,81 @@ export function getDepMessage() { reducer: { name: 'depMessage' } }); } -export function getReportStatistic(query) { +// export function getReportStatistic(query) { +// return dispatch => basicAction({ +// type: 'get', +// dispatch: dispatch, +// query: query, +// actionType: 'GET_DEPARTMENT_STATIS', +// url: ApiTable.getReportStatistic, +// msg: { error: '获取填报信息失败' }, +// reducer: { name: 'reportstatistic' } +// }); + +// } +export function getOperaTional(query) { return dispatch => basicAction({ type: 'get', dispatch: dispatch, query: query, - actionType: 'GET_DEPARTMENT_STATIS', - url: ApiTable.getReportStatistic, - msg: { error: '获取填报信息失败' }, - reducer: { name: 'reportstatistic' } + actionType: 'GET_OPERA_TIONAL', + url: ApiTable.getOperaTional, + msg: { error: '获取客运信息失败' }, + // reducer: { name: 'reportstatistic' } + }); +} +export function getSpecificVehicle(query) { + return dispatch => basicAction({ + type: 'get', + dispatch: dispatch, + query: query, + actionType: 'GET_SPECIFIC_VEHICLE', + url: ApiTable.getSpecificVehicle, + msg: { error: '获取车辆信息失败' }, + // reducer: { name: 'reportstatistic' } + }); +} +export function getHouseholds(query) { + return dispatch => basicAction({ + type: 'get', + dispatch: dispatch, + query: query, + actionType: 'GET_HOUSEHOLDS', + url: ApiTable.getHouseholds, + msg: { error: '获取业户信息失败' }, + // reducer: { name: 'reportstatistic' } + }); +} +export function getRoadway(query) { + return dispatch => basicAction({ + type: 'get', + dispatch: dispatch, + query: query, + actionType: 'GET_ROADWAY', + url: ApiTable.getRoadway, + msg: { error: '获取道路信息失败' }, + // reducer: { name: 'reportstatistic' } + }); +} +export function getBridge(query) { + return dispatch => basicAction({ + type: 'get', + dispatch: dispatch, + query: query, + actionType: 'GET_BRIDGE', + url: ApiTable.getBridge, + msg: { error: '获取桥梁信息失败' }, + // reducer: { name: 'reportstatistic' } + }); +} +export function getProject(query) { + return dispatch => basicAction({ + type: 'get', + dispatch: dispatch, + query: query, + actionType: 'GET_PROJECT', + url: ApiTable.getProject, + msg: { error: '获取工程信息失败' }, + // reducer: { name: 'reportstatistic' } }); } \ No newline at end of file diff --git a/web/client/src/sections/fillion/components/bridgeTable.js b/web/client/src/sections/fillion/components/bridgeTable.js index 7dab06ad..1e5afe22 100644 --- a/web/client/src/sections/fillion/components/bridgeTable.js +++ b/web/client/src/sections/fillion/components/bridgeTable.js @@ -4,21 +4,1523 @@ import { Spin, Button, Popconfirm, Badge } from 'antd'; import ProTable from '@ant-design/pro-table'; import './protable.less' import moment from 'moment'; -import { getReportStatistic } from "../actions/infor" +import { getBridge, getProject } from "../actions/infor" +import UserModal from './infor/details'; + const BrideTable = (props) => { const { dispatch, user, depData, depMessage, depLoading } = props const [rowSelected, setRowSelected] = useState([]) - const [regionId, setRegionId] = useState()//区域id - const [placeType, setPlaceType] = useState()//场所 - const [day, setDay] = useState([moment('2022-03-01').format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')])//日期 - const [sitename, setSitename] = useState()//场所名称 + // const [regionId, setRegionId] = useState()//区域id + // const [placeType, setPlaceType] = useState()//场所 + // const [day, setDay] = useState([moment('2022-03-01').format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')])//日期 + // const [sitename, setSitename] = useState()//场所名称 const [counts, setCounts] = useState()//shuju - useEffect(() => { - setRegionId(user.departmentId) - }, [user]) + const [modalVisible, setModalVisible] = useState(false); + const [modalRecord, setModalRecord] = useState(); + const [typecard, setTypecard] = useState(); + const [activeKey, setActiveKey] = useState('tab1'); + + const columns = { + tab1: [ + { + title: '桥梁代码', + dataIndex: 'placeName', + fixed: 'left', + width: 120, + options: 1, + backgroundColor: "#ffffff", + fieldProps: { + onChange: (value, cs) => { + setSitename(value.currentTarget.value) + }, + placeholder: '请输入桥梁代码进行搜索', + getPopupContainer: (triggerNode) => triggerNode.parentNode, + }, + }, + { + title: '桥梁名称', + search: false, + dataIndex: 'containers', + + fixed: 'left', + width: 120, + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, + { + title: '中心桩号', + search: false, + dataIndex: 'time2', + valueType: 'dateRange', + // align: 'right', + width: 120, + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, + { + title: '跨越地物类型', + search: false, + dataIndex: 'time3', + valueType: 'dateRange', + + + + width: 120, + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '跨越地物名称', + search: false, + dataIndex: 'time4', + valueType: 'dateRange', + + + width: 120, + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '收费性质', + search: false, + dataIndex: 'time5', + valueType: 'dateRange', + + + width: 120, + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '匝道编码', + search: false, + dataIndex: 'time6', + valueType: 'dateRange', + + + width: 120, + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '路段类型', + search: false, + dataIndex: 'time7', + valueType: 'dateRange', + + + width: 120, + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '跨越地物类型1', + search: false, + dataIndex: 'time8', + valueType: 'dateRange', + + + width: 120, + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '跨越地物名称1', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '原桥梁代码', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '是否宽路窄桥', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '是否在长大桥梁目录中', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '是否跨省桥梁', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '互通类型', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '互通形式', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '互通交叉方式', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '桥梁分类', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '桥梁全长', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '跨径总长', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '主桥主跨', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '主桥孔数', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '跨径组合', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '桥梁性质', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '设计荷载等级', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '上部结构', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '上部结构材料', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '桥面铺装类型', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '桥面宽', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '桥面净宽', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '桥下净空', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '抗震等级', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '通航等级', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '桥台类型', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '桥墩类型', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '墩台防撞设施类型', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '伸缩缝类型', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '支座类型', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '弯坡斜特征', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '桥梁高度', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '人行道宽度', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '建设单位', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '建成时间', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '通车日期', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '改建时间', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '总造价', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '设计单位名称', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '施工单位名称', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '监理单位名称', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '建设性质', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '评定日期', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '技术状况评定', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '评定单位', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '主要病害位置', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '病害描述', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '采取管制措施', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '最近定期检查日期', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '管养单位性质', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '管养单位', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '监管单位', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '改造施工单位', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '是否部补助项目', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '工程性质', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '改造部位', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '改造完工日期', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '年份1', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '跨径组合1', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '投资1', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '年份2', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '跨径组合2', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '投资2', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '年份3', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '跨径组合3', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '投资3', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '年份4', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, + { + title: '跨径组合4', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '投资4', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '年份5', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '跨径组合5', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '投资5', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划资金类别', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划年度', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划文号', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划项目唯一编码', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划项目类型', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划项目名称', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '完工情况', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '完工年度', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '变更原因', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '变更时间', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '填报单位', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '备注', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '是否跨线桥', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '是否线外桥', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '是否危桥改造', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '所在区县', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '所在地市', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, + { + title: '操作', + dataIndex: 'creatTime', + valueType: 'dateTimeRange', + hideInSearch: true, + width: 120, + fixed: 'right', + render: (dom, record) => { + return
+ + } + }, + { + key: "direction", + hideInTable: true, + dataIndex: "direction", + order: 6, + renderFormItem: (item, { type, defaultRender, ...rest }, form, record) => { + return ( +
+ +
- const columns = - [ + + ); + }, + }, + ], tab2: [ { title: '桥梁代码', dataIndex: 'placeName', @@ -67,7 +1569,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time3', valueType: 'dateRange', - initialValue: day, + width: 120, @@ -82,7 +1584,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time4', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -96,7 +1598,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time5', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -110,7 +1612,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time6', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -124,7 +1626,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time7', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -138,7 +1640,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time8', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -152,7 +1654,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -167,7 +1669,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -182,7 +1684,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -197,7 +1699,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -212,7 +1714,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -227,7 +1729,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -242,7 +1744,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -257,7 +1759,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -272,7 +1774,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -287,7 +1789,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -302,7 +1804,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -317,7 +1819,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -332,7 +1834,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -347,7 +1849,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -362,7 +1864,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -377,7 +1879,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -392,7 +1894,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -407,7 +1909,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -422,7 +1924,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -437,7 +1939,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -452,7 +1954,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -467,7 +1969,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -482,7 +1984,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -497,7 +1999,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -512,7 +2014,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -527,7 +2029,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -542,7 +2044,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -557,7 +2059,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -572,7 +2074,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -587,7 +2089,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -602,7 +2104,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -617,7 +2119,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -632,7 +2134,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -647,7 +2149,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -662,7 +2164,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -677,7 +2179,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -692,7 +2194,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -707,7 +2209,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -722,7 +2224,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -737,7 +2239,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -752,7 +2254,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -767,7 +2269,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -782,7 +2284,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -797,7 +2299,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -812,7 +2314,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -827,7 +2329,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -842,7 +2344,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -857,7 +2359,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -872,7 +2374,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -887,7 +2389,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -902,7 +2404,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -917,7 +2419,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -932,7 +2434,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -947,7 +2449,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -962,7 +2464,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -977,7 +2479,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -992,7 +2494,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1007,7 +2509,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1022,7 +2524,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1037,7 +2539,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1052,7 +2554,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1067,7 +2569,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1082,7 +2584,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1097,7 +2599,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1112,7 +2614,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1127,7 +2629,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1143,7 +2645,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1158,7 +2660,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1173,7 +2675,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1188,7 +2690,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1203,7 +2705,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1218,7 +2720,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1233,7 +2735,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1248,7 +2750,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1263,7 +2765,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1278,7 +2780,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1293,7 +2795,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1308,7 +2810,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1323,7 +2825,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1338,7 +2840,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1353,7 +2855,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1368,7 +2870,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1383,7 +2885,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1398,7 +2900,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1413,7 +2915,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1428,7 +2930,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1443,7 +2945,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1458,7 +2960,7 @@ const BrideTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1477,7 +2979,13 @@ const BrideTable = (props) => { width: 120, fixed: 'right', render: (dom, record) => { - return
+ return
} }, @@ -1486,13 +2994,14 @@ const BrideTable = (props) => { hideInTable: true, dataIndex: "direction", order: 6, - renderFormItem: (item, { type, defaultRender, ...rest }, form) => { + renderFormItem: (item, { type, defaultRender, ...rest }, form, record) => { return (
@@ -1513,22 +3020,85 @@ const BrideTable = (props) => { }, }, ] + } +const requestBridge=()=>{ + const query = { + } + setRowSelected([]); + const res = dispatch(getBridge(query)); + setCounts(res.payload.data) +} +//工程数据 +const requestProject=()=>{ + const query = { + type:'桥梁' + } + setRowSelected([]); + const res =dispatch(getProject(query)); + setCounts(res.payload.data) + } + //打开弹窗 + const openModal = (type, record) => { + setModalVisible(true); + // setModalType(type); + if (type == 'edit') { + setModalRecord(record); + } else { + setModalRecord(null); + } + } + //批量导出 + const exports = (ids, counts) => { + // console.log(user); + let reportIds = []; + if (ids.length) + reportIds = ids + else + reportIds = (counts || {}).ids || []; + superagent.post('/_report/http') + .send({ id: reportIds.map(i => Number(i)) }).end((err, res) => { + const resTextIs = res.text.split('/').pop() + window.open( + '/_api/' + + `attachments?src=files/${resTextIs}&filename=${encodeURIComponent(resTextIs)}&token=${user.token}`) + }) + } return (
setActiveKey(key), + items: [ + { + key: 'tab1', + label: requestBridge()}>桥梁{activeKey === 'tab1'}, + }, + { + key: 'tab2', + label: requestProject()}>工程一览{activeKey === 'tab2'}, + }, + + ], + }, + }} scroll={{ x: 800 }} options={false} ref={c => { finishedProductTable = c; }} style={{ width: "100% ", overflow: "auto", height: '760px' }} rowKey='id' onReset={(v) => { - const { id } = depMessage[0] - console.log(id) - setRegionId(id) - setPlaceType(-1) - setDay([moment('2022-03-01').format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')]) - setSitename('') + // const { id } = depMessage[0] + // console.log(id) + // setRegionId(id) + // setPlaceType(-1) + // setDay([moment('2022-03-01').format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')]) + // setSitename('') }} rowSelection={{ selectedRowKeys: rowSelected, @@ -1536,21 +3106,15 @@ const BrideTable = (props) => { setRowSelected(selectedRowKeys); }, }} - columns={columns} + columns={columns[activeKey]} dataSource={(counts || {}).rows || []} request={async (params) => { const query = { - startDate: day[0], - endDate: day[1], - placeType: placeType, - regionId: regionId, - placeName: sitename, - limit: params.pageSize, - offset: ((params.current ? params.current : 1) - 1) * params.pageSize + } setRowSelected([]); - const res = await dispatch(getReportStatistic(query)); + const res = await dispatch(getBridge(query)); setCounts(res.payload.data) return { ...res, @@ -1571,8 +3135,14 @@ const BrideTable = (props) => { }} > -
- + +
+ ) } diff --git a/web/client/src/sections/fillion/components/compileDrawer.js b/web/client/src/sections/fillion/components/compileDrawer.js deleted file mode 100644 index 6c22aa9b..00000000 --- a/web/client/src/sections/fillion/components/compileDrawer.js +++ /dev/null @@ -1,118 +0,0 @@ -// import React, { useEffect, useState } from 'react'; -// import { connect } from 'react-redux'; -// import { Spin, Drawer, Button } from 'antd'; -// import '../style.less'; -// import { EditableProTable } from '@ant-design/pro-table'; - -// const CompileDrawer = (props) => { -// const { dispatch, actions, user, loading, visible, checkRow, close, reportRectifyDetail, checkAction } = props -// const [requesting, setRequesting] = useState(false) -// const [dataSource, setDataSource] = useState([]) -// const { report } = actions -// const isCheck = checkAction == 'check' - -// useEffect(() => { -// if (checkRow.day) { -// dispatch(report.reportRectifyDetail(checkRow.day, checkRow.depId)) -// } -// }, [checkRow]) - -// useEffect(() => { -// let data = reportRectifyDetail -// let i = 1 -// for (let d of data) { -// d.index_ = i++ -// } -// setDataSource(data) -// }, [reportRectifyDetail]) - -// return ( -// { -// close() -// }} -// visible={visible} -// width={'82%'} -// > -// -// r.id) -// }} -// toolBarRender={() => [ -// isCheck ? '' : -// -// ]} -// > - -// -// -// -// ) -// } - -// function mapStateToProps (state) { -// const { auth, global, members, reportRectifyDetail } = state; -// return { -// loading: reportRectifyDetail.isRequesting, -// user: auth.user, -// actions: global.actions, -// members: members.data, -// reportRectifyDetail: reportRectifyDetail.data || [] -// }; -// } - -// export default connect(mapStateToProps)(CompileDrawer); diff --git a/web/client/src/sections/fillion/components/configModal.js b/web/client/src/sections/fillion/components/configModal.js deleted file mode 100644 index f2ad4352..00000000 --- a/web/client/src/sections/fillion/components/configModal.js +++ /dev/null @@ -1,124 +0,0 @@ -// import React, { useEffect, useRef } from 'react'; -// import { connect } from 'react-redux'; -// import { Spin, Button, Modal, Form, Switch } from 'antd'; -// import ProForm, { ProFormText, ProFormSelect } from '@ant-design/pro-form'; -// import { useState } from 'react'; - -// const ConfigModal = (props) => { -// const { dispatch, actions, user, loading, visible, close, editData, allAreas, reportType } = props -// const [excuteTimeOptions, setExcuteTimeOptions] = useState([]) -// const formRef = useRef() -// const { report } = actions - -// useEffect(() => { -// let excuteTimeOptions = [] -// for (let i = 0; i < 24; i++) { -// let curT = i -// if (curT < 10) { -// curT = '0' + curT -// } -// excuteTimeOptions.push({ -// value: curT + ':00', -// label: curT + ':00', -// }) -// excuteTimeOptions.push({ -// value: curT + ':30', -// label: curT + ':30', -// }) -// } -// setExcuteTimeOptions(excuteTimeOptions); -// }, []) - -// return ( -// { -// formRef.current.validateFields().then(v => { -// v.excuteTime = String(v.excuteTime) -// console.log(v); -// dispatch(editData ? report.editReportConfig(v, editData.id) : report.addReportConfig(v)).then(res => { -// if (res.success) { -// dispatch(report.getReportConfig()) -// close() -// } -// }) -// }) -// }} -// onCancel={() => { -// close() -// }} -// > -// -// -// -// { -// return { -// value: a.id, -// label: a.name, -// } -// })} -// cacheForSwr -// name="regionId" -// label="区域" -// required -// rules={[{ required: true, message: '请选择区域' }]} -// /> -// -// -// -// -// -// -// ) -// } - -// function mapStateToProps (state) { -// const { auth, global, allAreas } = state; -// console.log(allAreas); -// return { -// user: auth.user, -// actions: global.actions, -// allAreas: allAreas.data || [] -// }; -// } - -// export default connect(mapStateToProps)(ConfigModal); diff --git a/web/client/src/sections/fillion/components/enforceTable.js b/web/client/src/sections/fillion/components/enforceTable.js index f5d15f51..468c0818 100644 --- a/web/client/src/sections/fillion/components/enforceTable.js +++ b/web/client/src/sections/fillion/components/enforceTable.js @@ -5,6 +5,8 @@ import ProTable from '@ant-design/pro-table'; import './protable.less' import moment from 'moment'; import { getReportStatistic } from "../actions/infor" +import UserModal from './infor/details'; + const enforceTable = (props) => { const { dispatch, user, depData, depMessage, depLoading } = props const [rowSelected, setRowSelected] = useState([]) @@ -13,10 +15,36 @@ const enforceTable = (props) => { const [day, setDay] = useState([moment('2022-03-01').format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')])//日期 const [sitename, setSitename] = useState()//场所名称 const [counts, setCounts] = useState()//shuju - useEffect(() => { - setRegionId(user.departmentId) - }, [user]) - + const [modalVisible, setModalVisible] = useState(false); + const [modalRecord, setModalRecord] = useState(); + const [typecard, setTypecard] = useState(); + +//打开弹窗 +const openModal = (type, record) => { + setModalVisible(true); + // setModalType(type); + if (type == 'edit') { + setModalRecord(record); + } else { + setModalRecord(null); + } +} + //批量导出 + const exports = (ids, counts) => { + // console.log(user); + let reportIds = []; + if (ids.length) + reportIds = ids + else + reportIds = (counts || {}).ids || []; + superagent.post('/_report/http') + .send({ id: reportIds.map(i => Number(i)) }).end((err, res) => { + const resTextIs = res.text.split('/').pop() + window.open( + '/_api/' + + `attachments?src=files/${resTextIs}&filename=${encodeURIComponent(resTextIs)}&token=${user.token}`) + }) +} const columns = [ { @@ -1477,7 +1505,13 @@ const enforceTable = (props) => { width: 120, fixed: 'right', render: (dom, record) => { - return
+ return
} }, @@ -1486,13 +1520,14 @@ const enforceTable = (props) => { hideInTable: true, dataIndex: "direction", order: 6, - renderFormItem: (item, { type, defaultRender, ...rest }, form) => { + renderFormItem: (item, { type, defaultRender, ...rest }, form,record) => { return (
- + ) } diff --git a/web/client/src/sections/fillion/components/highwaysTable.js b/web/client/src/sections/fillion/components/highwaysTable.js index ff18948b..de0e8091 100644 --- a/web/client/src/sections/fillion/components/highwaysTable.js +++ b/web/client/src/sections/fillion/components/highwaysTable.js @@ -5,6 +5,8 @@ import ProTable from '@ant-design/pro-table'; import './protable.less' import moment from 'moment'; import { getReportStatistic } from "../actions/infor" +import UserModal from './infor/details'; + const HigwaysTable = (props) => { const { dispatch, user, depData, depMessage, depLoading } = props const [rowSelected, setRowSelected] = useState([]) @@ -13,10 +15,36 @@ const HigwaysTable = (props) => { const [day, setDay] = useState([moment('2022-03-01').format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')])//日期 const [sitename, setSitename] = useState()//场所名称 const [counts, setCounts] = useState()//shuju - useEffect(() => { - setRegionId(user.departmentId) - }, [user]) - + const [modalVisible, setModalVisible] = useState(false); + const [modalRecord, setModalRecord] = useState(); + const [typecard, setTypecard] = useState(); + +//打开弹窗 +const openModal = (type, record) => { + setModalVisible(true); + // setModalType(type); + if (type == 'edit') { + setModalRecord(record); + } else { + setModalRecord(null); + } +} + //批量导出 +const exports = (ids, counts) => { + // console.log(user); + let reportIds = []; + if (ids.length) + reportIds = ids + else + reportIds = (counts || {}).ids || []; + superagent.post('/_report/http') + .send({ id: reportIds.map(i => Number(i)) }).end((err, res) => { + const resTextIs = res.text.split('/').pop() + window.open( + '/_api/' + + `attachments?src=files/${resTextIs}&filename=${encodeURIComponent(resTextIs)}&token=${user.token}`) + }) +} const columns = [ { @@ -1477,7 +1505,12 @@ const HigwaysTable = (props) => { width: 120, fixed: 'right', render: (dom, record) => { - return
+ return
} }, @@ -1486,13 +1519,14 @@ const HigwaysTable = (props) => { hideInTable: true, dataIndex: "direction", order: 6, - renderFormItem: (item, { type, defaultRender, ...rest }, form) => { + renderFormItem: (item, { type, defaultRender, ...rest }, form, record) => { return (
@@ -1572,7 +1604,12 @@ const HigwaysTable = (props) => { >
- + ) } diff --git a/web/client/src/sections/fillion/components/infor/details.js b/web/client/src/sections/fillion/components/infor/details.js index 4522a774..35b4a6c9 100644 --- a/web/client/src/sections/fillion/components/infor/details.js +++ b/web/client/src/sections/fillion/components/infor/details.js @@ -1,114 +1,44 @@ import React from 'react'; import { connect } from 'react-redux'; import { Spin, Table } from 'antd'; -import { ModalForm } from '@ant-design/pro-form'; +import { DrawerForm, ProForm, ProFormText } from '@ant-design/pro-form'; import moment from 'moment'; const UserModal = (props) => { - const { visible, onVisibleChange } = props - const datas = props.modalRecord || {} - const scopeOfExamination = { ...datas }.hiddenDangerItem12 - const arr = [ - ' 1、合用场所的所有权人、使用人是否遵守消防法律、法规、规章;', - ' 2、住宿场所是否违规搭建;', - ' 3、合用场所是否配置灭火器、消防应急照明等消防器材和设施;', - ' 4、合用场所的电器产品的安装、使用及其线路和管路的设计、敷设、维护保养、检测,是否符合消防技术标准和管理规定;', - ' 5、合用场所住宿是否超过2人;(judge_0) 若超过,人员住宿是否设置在首层,并直通室外安全出口。(judge_1)', - ' 6、电动自行车是否违规室内充电、停放;', - ' 7、合用场所是否违规生产、储存、经营易燃易爆危险品;', - ' 8、合用场所除厨房外是否违规使用或者放置瓶装液化石油气、可燃液体;', - ' 9、放置瓶装液化石油气的厨房是否采取防火分隔措施,并设置自然排风窗;', - ' 10、合用场所疏散通道、安全出口是否保持畅通;', - ' 11、合用场所的外窗或阳台是否设置金属栅栏;(judge_0) 若设置,是否能从内部易于开启。(judge_1)', - ' 12、存在其他安全隐患;', - ] - const columns = [ - { - title: '场所名称', - dataIndex: 'reportName', - hideInSearch: true, - render: () => { - return
{datas.placeName}
- } - }, { - title: '场所基本情况', - dataIndex: 'reportName', - hideInSearch: true, - render: () => { - return
-
  • 使用性质:{datas.placeType}
  • -
  • 地址:{datas.address}
  • -
  • 负责人:{datas.placeOwner}
  • -
  • 电话:{datas.phone}
  • -
  • 面积:{datas.dimension}
  • -
  • 层数:{datas.floors}
  • -
  • 常驻人口:{datas.numberOfPeople}
  • -
    - } - }, { - title: '检查内容', - dataIndex: 'reportName', - hideInSearch: true, - render: () => { - return datas.hiddenDangerItem12 ? - scopeOfExamination.map((item, index) => { - let message = arr[index] - if (arr[index].indexOf('judge_') > -1) { - if (item.value == true && index === 4) { - message = message.replace(`judge_1`, item.child.value ? "是" : "否") - } else { - message = message.replace(`若超过,人员住宿是否设置在首层,并直通室外安全出口。(judge_1)`, '') - - - } - if (item.value == true && index === 10) { - message = message.replace(`judge_1`, item.child.value ? "是" : "否") - } else { - - message = message.replace(`若设置,是否能从内部易于开启。(judge_1)`, '') - - } - if (arr[index].indexOf('judge_0') > -1) { - return
  • {message.replace(`judge_0`, item.value ? "是" : "否")}
  • - } - } - return
  • {message}({item.value ? "是" : "否"})
  • - }) - : '---' - } - }, { - title: '存在具体问题', - dataIndex: 'reportName', - hideInSearch: true, - render: () => { - return
    {datas.description ? datas.description : '---'}
    - } - }, - ] - const data = [ - { - key: '1', - - address: 'New York No. 1 Lake Park', - tags: ['nice', 'developer'], - }, - ]; + const { visible, onVisibleChange,typecard } = props + console.log(typecard) return ( - -
    排查单位:{(datas || {}).checkAreaName || ''} - 填报日期:{moment((datas || {}).time).format('YYYY-MM-DD') || ''}
    - -
    - 排查人:{(datas || {}).checkUserName || ''} - 手机号:{(datas || {}).checkUserPhone || ''}
    - + {typecard==111? + + + + : + + + } + + ) } diff --git a/web/client/src/sections/fillion/components/inforTable.js b/web/client/src/sections/fillion/components/inforTable.js index 58dc18bf..5690aae7 100644 --- a/web/client/src/sections/fillion/components/inforTable.js +++ b/web/client/src/sections/fillion/components/inforTable.js @@ -1,22 +1,47 @@ import React, { useEffect, useState } from 'react'; import { connect } from 'react-redux'; -import { Spin, Button, Popconfirm, Badge } from 'antd'; +import { Spin, Button, Popconfirm, Col, Input,Row } from 'antd'; import ProTable from '@ant-design/pro-table'; import './protable.less' import moment from 'moment'; import { getReportStatistic } from "../actions/infor" +import UserModal from './infor/details'; + const InForTable = (props) => { const { dispatch, user, depData, depMessage, depLoading } = props const [rowSelected, setRowSelected] = useState([]) - const [regionId, setRegionId] = useState()//区域id - const [placeType, setPlaceType] = useState()//场所 - const [day, setDay] = useState([moment('2022-03-01').format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')])//日期 - const [sitename, setSitename] = useState()//场所名称 + const [counts, setCounts] = useState()//shuju - useEffect(() => { - setRegionId(user.departmentId) - }, [user]) + const [modalVisible, setModalVisible] = useState(false); + const [modalRecord, setModalRecord] = useState(); + const [typecard, setTypecard] = useState(); + //打开弹窗 + const openModal = (type, record) => { + setModalVisible(true); + // setModalType(type); + if (type == 'edit') { + setModalRecord(record); + } else { + setModalRecord(null); + } + } + //批量导出 + const exports = (ids, counts) => { + // console.log(user); + let reportIds = []; + if (ids.length) + reportIds = ids + else + reportIds = (counts || {}).ids || []; + superagent.post('/_report/http') + .send({ id: reportIds.map(i => Number(i)) }).end((err, res) => { + const resTextIs = res.text.split('/').pop() + window.open( + '/_api/' + + `attachments?src=files/${resTextIs}&filename=${encodeURIComponent(resTextIs)}&token=${user.token}`) + }) + } const columns = [ { @@ -67,22 +92,34 @@ const InForTable = (props) => { // search: false, dataIndex: 'containers3', // valueType: 'dateRange', - // initialValue: day, + // width: 120, render: (dom, record) => { return record.address }, - fieldProps: { - placeholder: '请输入超限率进行搜索', - getPopupContainer: (triggerNode) => triggerNode.parentNode, + // fieldProps: { + // placeholder: '请输入超限率进行搜索', + // getPopupContainer: (triggerNode) => triggerNode.parentNode, + // }, + renderFormItem: (item, { type, defaultRender, formItemProps, fieldProps, ...rest }, form) => { + return + + + + + + + + + } - + }, { title: '超限重量(kg)', search: false, dataIndex: 'containers4', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -96,7 +133,7 @@ const InForTable = (props) => { search: false, dataIndex: 'containers5', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -110,7 +147,7 @@ const InForTable = (props) => { search: false, dataIndex: 'containers6', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -137,7 +174,7 @@ const InForTable = (props) => { search: false, dataIndex: 'containers8', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -151,7 +188,7 @@ const InForTable = (props) => { search: false, dataIndex: 'containers9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -166,7 +203,7 @@ const InForTable = (props) => { search: false, dataIndex: 'containers10', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -181,7 +218,7 @@ const InForTable = (props) => { search: false, dataIndex: 'containers11', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -196,7 +233,7 @@ const InForTable = (props) => { search: false, dataIndex: 'containers12', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -211,7 +248,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -226,7 +263,7 @@ const InForTable = (props) => { search: false, dataIndex: 'containers13', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -241,7 +278,7 @@ const InForTable = (props) => { search: false, dataIndex: 'containers14', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -260,7 +297,13 @@ const InForTable = (props) => { width: 120, fixed: 'right', render: (dom, record) => { - return
    + return
    } }, @@ -269,13 +312,14 @@ const InForTable = (props) => { hideInTable: true, dataIndex: "direction", order: 6, - renderFormItem: (item, { type, defaultRender, ...rest }, form) => { + renderFormItem: (item, { type, defaultRender, ...rest }, form, record) => { return (
    @@ -305,14 +347,7 @@ const InForTable = (props) => { ref={c => { finishedProductTable = c; }} style={{ width: "100% ", overflow: "auto", height: '760px' }} rowKey='id' - onReset={(v) => { - const { id } = depMessage[0] - console.log(id) - setRegionId(id) - setPlaceType(-1) - setDay([moment('2022-03-01').format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')]) - setSitename('') - }} + rowSelection={{ selectedRowKeys: rowSelected, onChange: (selectedRowKeys) => { @@ -355,7 +390,12 @@ const InForTable = (props) => { >
    - + ) } diff --git a/web/client/src/sections/fillion/components/operationalTable.js b/web/client/src/sections/fillion/components/operationalTable.js index 55c2d088..653ae268 100644 --- a/web/client/src/sections/fillion/components/operationalTable.js +++ b/web/client/src/sections/fillion/components/operationalTable.js @@ -4,1146 +4,94 @@ import { Spin, Button, Popconfirm, Badge } from 'antd'; import ProTable from '@ant-design/pro-table'; import './protable.less' import moment from 'moment'; -import { getReportStatistic } from "../actions/infor" -const OperaTionalTable = (props) => { - const { dispatch, user, depData, depMessage, depLoading } = props - const [rowSelected, setRowSelected] = useState([]) - const [regionId, setRegionId] = useState()//区域id - const [placeType, setPlaceType] = useState()//场所 - const [day, setDay] = useState([moment('2022-03-01').format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')])//日期 - const [sitename, setSitename] = useState()//场所名称 - const [counts, setCounts] = useState()//shuju - useEffect(() => { - setRegionId(user.departmentId) - }, [user]) - const [activeKey, setActiveKey] = useState('tab1'); - // const renderBadge = (count, active = false) => { - // return ( - // - // ); - // }; - const columns = { - tab1: [ - { - title: '路线名称', - dataIndex: 'placeName', - fixed: 'left', - width: 120, - options: 1, - backgroundColor: "#ffffff", - fieldProps: { - onChange: (value, cs) => { - setSitename(value.currentTarget.value) - }, - placeholder: '请输入道路名称进行搜索', - getPopupContainer: (triggerNode) => triggerNode.parentNode, - }, - }, - { - title: '路线代码', - search: false, - dataIndex: 'containers', - - fixed: 'left', - width: 120, - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, - { - title: '路段序号', - search: false, - dataIndex: 'time2', - valueType: 'dateRange', - // align: 'right', - width: 120, - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, - { - title: '乡镇编码', - search: false, - dataIndex: 'time3', - valueType: 'dateRange', - initialValue: day, - - - width: 120, - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '起点地名', - search: false, - dataIndex: 'time4', - valueType: 'dateRange', - initialValue: day, - - width: 120, - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '起点桩号', - search: false, - dataIndex: 'time5', - valueType: 'dateRange', - initialValue: day, - - width: 120, - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '起点分界点类别', - search: false, - dataIndex: 'time6', - valueType: 'dateRange', - initialValue: day, - - width: 120, - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '止点地名', - search: false, - dataIndex: 'time7', - valueType: 'dateRange', - initialValue: day, - - width: 120, - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '止点分界点类别', - search: false, - dataIndex: 'time8', - valueType: 'dateRange', - initialValue: day, - - width: 120, - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '止点桩号', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '路段类型', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '路网调整前路线编码', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '原路段序号', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '原路段起点桩号', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '原路段止点桩号', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '路线等级', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '路段性质', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '建成时间', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '改建时间', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '建设性质', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '最近一次修复养护年度', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: 'GBM及文明样板路', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '地貌', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '收费性质', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '所属收费站', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '涵洞数量', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '技术等级', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '路面类型', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '面层厚度(厘米)', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '路面宽度', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '路基宽度', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '是否晴雨通车', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '车道特征', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '设计时速', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '是否城管路段', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '管养单位', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '路政管理单位', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '列养情况', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '列养资金来源', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '养护时间', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '可绿化里程', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '已绿化里程', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '重复道路路段类型', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '重复路段序号', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '重复路段路线编码', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '计划资金类别', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '计划年度', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '计划文号', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '计划项目唯一编码', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '计划项目路线编码', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '计划项目名称', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '计划项目类型', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '完工情况', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '完工年度', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '计划资金类别', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '计划年度', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '计划文号', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '计划项目唯一编码', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '计划项目名称', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '完工情况', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '完工年度', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '桩号范围', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '填报单位', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '变更原因', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '变更时间', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '是否按干线公路管理接养', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '备注', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '上年路线编码', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '上年路线名称', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '上年起点桩号', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '上年止点桩号', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, +import { getOperaTional, getSpecificVehicle, getHouseholds } from "../actions/infor" +import UserModal from './infor/details'; - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '图形里程', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address - }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '桩号里程', +const OperaTionalTable = (props) => { + const { dispatch, user, depData, depMessage, depLoading } = props + const [rowSelected, setRowSelected] = useState([]) + // const [regionId, setRegionId] = useState()//区域id + // const [placeType, setPlaceType] = useState()//场所 + // const [day, setDay] = useState([moment('2022-03-01').format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')])//日期 + // const [sitename, setSitename] = useState()//场所名称 + const [counts, setCounts] = useState()//shuju + const [modalVisible, setModalVisible] = useState(false); + const [modalRecord, setModalRecord] = useState(); + const [typecard, setTypecard] = useState(); + const [activeKey, setActiveKey] = useState('tab1'); + //客运请求 + const requestoperational = () => { + const query = '' + setRowSelected([]); + const res = dispatch(getOperaTional(query)); + setCounts(res.payload.data) + } + //危货出租车请求 + const requestspecificvehicle = (name) => { + const query = name + setRowSelected([]); + const res = dispatch(getSpecificVehicle(query)); + setCounts(res.payload.data) + } + // + const requesthouseholds = () => { + const query = '' + setRowSelected([]); + const res = dispatch(getHouseholds(query)); + setCounts(res.payload.data) + } + //打开弹窗 + const openModal = (type, record) => { + setModalVisible(true); + // setModalType(type); + if (type == 'edit') { + setModalRecord(record); + } else { + setModalRecord(null); + } + } + //批量导出 + const exports = (ids, counts) => { + // console.log(user); + let reportIds = []; + if (ids.length) + reportIds = ids + else + reportIds = (counts || {}).ids || []; + superagent.post('/_report/http') + .send({ id: reportIds.map(i => Number(i)) }).end((err, res) => { + const resTextIs = res.text.split('/').pop() + window.open( + '/_api/' + + `attachments?src=files/${resTextIs}&filename=${encodeURIComponent(resTextIs)}&token=${user.token}`) + }) + } + const columns = { + tab1: [ + { + title: '类型', + dataIndex: 'placeName', + fixed: 'left', + width: 120, + options: 1, + backgroundColor: "#ffffff", search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - render: (dom, record) => { - return record.address - }, fieldProps: { + onChange: (value, cs) => { + setSitename(value.currentTarget.value) + }, + placeholder: '请输入道路名称进行搜索', getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '所在区县', - search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, - - render: (dom, record) => { - return record.address }, - fieldProps: { - getPopupContainer: (triggerNode) => triggerNode.parentNode, - } - }, { - title: '所在地市', + }, + { + title: '数量', search: false, - dataIndex: 'time9', - valueType: 'dateRange', - initialValue: day, - - width: 140, + dataIndex: 'containers', + fixed: 'left', + width: 120, render: (dom, record) => { return record.address }, @@ -1159,41 +107,17 @@ const OperaTionalTable = (props) => { width: 120, fixed: 'right', render: (dom, record) => { - return
    + return
    } }, - { - key: "direction", - hideInTable: true, - dataIndex: "direction", - order: 6, - renderFormItem: (item, { type, defaultRender, ...rest }, form) => { - return ( -
    - -
    - - ); - }, - }, ], tab2: [ { title: '业户名称', @@ -1243,7 +167,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time3', valueType: 'dateRange', - initialValue: day, + width: 120, @@ -1258,7 +182,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time4', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -1272,7 +196,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time5', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -1286,7 +210,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time6', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -1300,7 +224,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time7', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -1314,7 +238,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time8', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -1328,7 +252,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1343,7 +267,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1358,7 +282,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1373,7 +297,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1388,7 +312,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1403,7 +327,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1418,7 +342,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1433,7 +357,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1448,7 +372,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1463,7 +387,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1478,7 +402,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1493,7 +417,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1508,7 +432,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1523,7 +447,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1538,7 +462,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1553,7 +477,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1568,7 +492,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1583,7 +507,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1598,7 +522,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1613,7 +537,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1628,7 +552,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1643,7 +567,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1658,7 +582,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1673,7 +597,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1688,7 +612,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1703,7 +627,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1718,7 +642,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1733,7 +657,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1748,7 +672,7 @@ const OperaTionalTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1767,7 +691,12 @@ const OperaTionalTable = (props) => { width: 120, fixed: 'right', render: (dom, record) => { - return
    + return
    } }, @@ -1776,13 +705,14 @@ const OperaTionalTable = (props) => { hideInTable: true, dataIndex: "direction", order: 6, - renderFormItem: (item, { type, defaultRender, ...rest }, form) => { + renderFormItem: (item, { type, defaultRender, ...rest }, form, record) => { return (
    + return
    } }, { @@ -2398,13 +1333,14 @@ const OperaTionalTable = (props) => { hideInTable: true, dataIndex: "direction", order: 6, - renderFormItem: (item, { type, defaultRender, ...rest }, form) => { + renderFormItem: (item, { type, defaultRender, ...rest }, form, record) => { return (
    + return
    } }, @@ -3561,13 +2502,14 @@ const OperaTionalTable = (props) => { hideInTable: true, dataIndex: "direction", order: 6, - renderFormItem: (item, { type, defaultRender, ...rest }, form) => { + renderFormItem: (item, { type, defaultRender, ...rest }, form, record) => { return (
    - + : null + ], }} >
    - + ) } diff --git a/web/client/src/sections/fillion/components/promotionalTable.js b/web/client/src/sections/fillion/components/promotionalTable.js index 7b7803fc..f12810dd 100644 --- a/web/client/src/sections/fillion/components/promotionalTable.js +++ b/web/client/src/sections/fillion/components/promotionalTable.js @@ -13,9 +13,7 @@ const promotionalTable = (props) => { const [day, setDay] = useState([moment('2022-03-01').format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')])//日期 const [sitename, setSitename] = useState()//场所名称 const [counts, setCounts] = useState()//shuju - useEffect(() => { - setRegionId(user.departmentId) - }, [user]) + const columns = [{ @@ -141,6 +139,7 @@ const promotionalTable = (props) => { // // ], // }} + > diff --git a/web/client/src/sections/fillion/components/publicTable.js b/web/client/src/sections/fillion/components/publicTable.js index d0aba20d..51f55cfb 100644 --- a/web/client/src/sections/fillion/components/publicTable.js +++ b/web/client/src/sections/fillion/components/publicTable.js @@ -5,6 +5,8 @@ import ProTable from '@ant-design/pro-table'; import './protable.less' import moment from 'moment'; import { getReportStatistic } from "../actions/infor" +import UserModal from './infor/details'; + const PublicTable = (props) => { const { dispatch, user, depData, depMessage, depLoading } = props const [rowSelected, setRowSelected] = useState([]) @@ -12,11 +14,39 @@ const PublicTable = (props) => { const [placeType, setPlaceType] = useState()//场所 const [day, setDay] = useState([moment('2022-03-01').format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')])//日期 const [sitename, setSitename] = useState()//场所名称 - const [counts, setCounts] = useState()//shuju - useEffect(() => { - setRegionId(user.departmentId) - }, [user]) + const [counts, setCounts] = useState()//shuju const [activeKey, setActiveKey] = useState('tab1'); + const [modalVisible, setModalVisible] = useState(false); + const [modalRecord, setModalRecord] = useState(); + const [typecard, setTypecard] = useState(); + + + //打开弹窗 + const openModal = (type, record) => { + setModalVisible(true); + // setModalType(type); + if (type == 'edit') { + setModalRecord(record); + } else { + setModalRecord(null); + } + } + //批量导出 + const exports = (ids, counts) => { + // console.log(user); + let reportIds = []; + if (ids.length) + reportIds = ids + else + reportIds = (counts || {}).ids || []; + superagent.post('/_report/http') + .send({ id: reportIds.map(i => Number(i)) }).end((err, res) => { + const resTextIs = res.text.split('/').pop() + window.open( + '/_api/' + + `attachments?src=files/${resTextIs}&filename=${encodeURIComponent(resTextIs)}&token=${user.token}`) + }) + } const columns = { tab1: [ { @@ -128,7 +158,12 @@ const PublicTable = (props) => { width: 120, fixed: 'right', render: (dom, record) => { - return
    + return
    } }, @@ -137,13 +172,14 @@ const PublicTable = (props) => { hideInTable: true, dataIndex: "direction", order: 6, - renderFormItem: (item, { type, defaultRender, ...rest }, form) => { + renderFormItem: (item, { type, defaultRender, ...rest }, form, record) => { return (
    + return
    } }, @@ -285,13 +326,14 @@ const PublicTable = (props) => { hideInTable: true, dataIndex: "direction", order: 6, - renderFormItem: (item, { type, defaultRender, ...rest }, form) => { + renderFormItem: (item, { type, defaultRender, ...rest }, form, record) => { return (
    - + ) } diff --git a/web/client/src/sections/fillion/components/transportationTable.js b/web/client/src/sections/fillion/components/transportationTable.js index 666f5052..1d109899 100644 --- a/web/client/src/sections/fillion/components/transportationTable.js +++ b/web/client/src/sections/fillion/components/transportationTable.js @@ -4,34 +4,1220 @@ import { Spin, Button, Popconfirm, Badge } from 'antd'; import ProTable from '@ant-design/pro-table'; import './protable.less' import moment from 'moment'; -import { getReportStatistic } from "../actions/infor" -const InForTable = (props) => { +import { getRoadway, getProject } from "../actions/infor" +import UserModal from './infor/details'; + +const TransporTationTable = (props) => { const { dispatch, user, depData, depMessage, depLoading } = props const [rowSelected, setRowSelected] = useState([]) - const [regionId, setRegionId] = useState()//区域id - const [placeType, setPlaceType] = useState()//场所 - const [day, setDay] = useState([moment('2022-03-01').format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')])//日期 - const [sitename, setSitename] = useState()//场所名称 + // const [regionId, setRegionId] = useState()//区域id + // const [placeType, setPlaceType] = useState()//场所 + // const [day, setDay] = useState([moment('2022-03-01').format('YYYY-MM-DD'), moment().format('YYYY-MM-DD')])//日期 + // const [sitename, setSitename] = useState()//场所名称 const [counts, setCounts] = useState()//shuju - useEffect(() => { - setRegionId(user.departmentId) - }, [user]) + const [modalVisible, setModalVisible] = useState(false); + const [modalRecord, setModalRecord] = useState(); + const [typecard, setTypecard] = useState(); const [activeKey, setActiveKey] = useState('tab1'); - // const renderBadge = (count, active = false) => { - // return ( - // - // ); - // }; + + //请求数据 + const requestRoadway = (name) => { + const query = { + level: name + } + setRowSelected([]); + const res = dispatch(getRoadway(query)); + setCounts(res.payload.data) + } + //工程数据 + const requestProject = () => { + const query = { + type: '道路' + } + setRowSelected([]); + const res = dispatch(getProject(query)); + setCounts(res.payload.data) + } + //打开弹窗 + const openModal = (type, record) => { + setModalVisible(true); + // setModalType(type); + if (type == 'edit') { + setModalRecord(record); + } else { + setModalRecord(null); + } + } + console.log(counts) + //批量导出 + const exports = (ids, counts) => { + // console.log(user); + let reportIds = []; + if (ids.length) + reportIds = ids + else + reportIds = (counts || {}).ids || []; + superagent.post('/_report/http') + .send({ id: reportIds.map(i => Number(i)) }).end((err, res) => { + const resTextIs = res.text.split('/').pop() + window.open( + '/_api/' + + `attachments?src=files/${resTextIs}&filename=${encodeURIComponent(resTextIs)}&token=${user.token}`) + }) + } const columns = { tab1: [ + { + title: '路线名称', + dataIndex: 'placeName', + fixed: 'left', + width: 120, + options: 1, + backgroundColor: "#ffffff", + fieldProps: { + onChange: (value, cs) => { + setSitename(value.currentTarget.value) + }, + placeholder: '请输入道路名称进行搜索', + getPopupContainer: (triggerNode) => triggerNode.parentNode, + }, + render: (dom, record) => { + console.log('record',record) + return record.routeName + }, + }, + { + title: '路线代码', + search: false, + dataIndex: 'containers', + + fixed: 'left', + width: 120, + render: (dom, record) => { + return record.routeCode + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, + { + title: '路段序号', + search: false, + dataIndex: 'time2', + valueType: 'dateRange', + // align: 'right', + width: 120, + render: (dom, record) => { + return record.sectionNo + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, + { + title: '乡镇编码', + search: false, + dataIndex: 'time3', + valueType: 'dateRange', + width: 120, + render: (dom, record) => { + return record.townshipCode + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '起点地名', + search: false, + dataIndex: 'time4', + valueType: 'dateRange', + width: 120, + render: (dom, record) => { + return record.startingPlaceName + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '起点桩号', + search: false, + dataIndex: 'time5', + valueType: 'dateRange', + width: 120, + render: (dom, record) => { + return record.startStation + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '起点分界点类别', + search: false, + dataIndex: 'time6', + valueType: 'dateRange', + width: 120, + render: (dom, record) => { + return record.categoryOfStartingPointAndDividingPoint + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '止点地名', + search: false, + dataIndex: 'time7', + valueType: 'dateRange', + width: 120, + render: (dom, record) => { + return record.stopPlaceName + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '止点分界点类别', + search: false, + dataIndex: 'time8', + valueType: 'dateRange', + width: 120, + render: (dom, record) => { + return record.categoryOfDeadCenterAndDividingPoint + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '止点桩号', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + width: 140, + render: (dom, record) => { + return record.stopStation + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '路段类型', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + width: 140, + render: (dom, record) => { + return record.sectionType + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '路网调整前路线编码', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + width: 140, + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '原路段序号', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '原路段起点桩号', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '原路段止点桩号', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '路线等级', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '路段性质', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '建成时间', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '改建时间', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '建设性质', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '最近一次修复养护年度', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: 'GBM及文明样板路', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '地貌', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '收费性质', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '所属收费站', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '涵洞数量', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '技术等级', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '路面类型', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '面层厚度(厘米)', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '路面宽度', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '路基宽度', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '是否晴雨通车', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '车道特征', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '设计时速', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '是否城管路段', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '管养单位', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '路政管理单位', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '列养情况', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '列养资金来源', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '养护时间', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '可绿化里程', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '已绿化里程', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '重复道路路段类型', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '重复路段序号', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '重复路段路线编码', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划资金类别', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划年度', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划文号', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划项目唯一编码', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划项目路线编码', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划项目名称', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划项目类型', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '完工情况', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '完工年度', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划资金类别', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划年度', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划文号', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划项目唯一编码', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '计划项目名称', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '完工情况', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '完工年度', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '桩号范围', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '填报单位', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '变更原因', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '变更时间', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '是否按干线公路管理接养', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '备注', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '上年路线编码', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '上年路线名称', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '上年起点桩号', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '上年止点桩号', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '图形里程', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '桩号里程', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '所在区县', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, { + title: '所在地市', + search: false, + dataIndex: 'time9', + valueType: 'dateRange', + + + width: 140, + + render: (dom, record) => { + return record.address + }, + fieldProps: { + getPopupContainer: (triggerNode) => triggerNode.parentNode, + } + }, + { + title: '操作', + dataIndex: 'creatTime', + valueType: 'dateTimeRange', + hideInSearch: true, + width: 120, + fixed: 'right', + render: (dom, record) => { + return
    + + } + }, + { + key: "direction", + hideInTable: true, + dataIndex: "direction", + order: 6, + renderFormItem: (item, { type, defaultRender, ...rest }, form) => { + return ( +
    + +
    + + + ); + }, + }, + ], tab2: [ { title: '路线名称', dataIndex: 'placeName', @@ -80,7 +1266,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time3', valueType: 'dateRange', - initialValue: day, + width: 120, @@ -95,7 +1281,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time4', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -109,7 +1295,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time5', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -123,7 +1309,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time6', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -137,7 +1323,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time7', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -151,7 +1337,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time8', valueType: 'dateRange', - initialValue: day, + width: 120, render: (dom, record) => { @@ -165,7 +1351,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -180,7 +1366,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -195,7 +1381,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -210,7 +1396,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -225,7 +1411,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -240,7 +1426,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -255,7 +1441,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -270,7 +1456,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -285,7 +1471,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -300,7 +1486,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -315,7 +1501,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -330,7 +1516,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -345,7 +1531,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -360,7 +1546,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -375,7 +1561,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -390,7 +1576,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -405,7 +1591,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -420,7 +1606,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -435,7 +1621,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -450,7 +1636,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -465,7 +1651,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -480,7 +1666,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -495,7 +1681,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -510,7 +1696,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -525,7 +1711,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -540,7 +1726,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -555,7 +1741,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -570,7 +1756,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -585,7 +1771,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -600,7 +1786,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -615,7 +1801,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -630,7 +1816,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -645,7 +1831,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -660,7 +1846,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -675,7 +1861,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -690,7 +1876,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -705,7 +1891,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -720,7 +1906,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -735,7 +1921,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -750,7 +1936,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -765,7 +1951,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -780,7 +1966,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -795,7 +1981,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -810,7 +1996,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -825,7 +2011,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -840,7 +2026,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -855,7 +2041,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -870,7 +2056,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -885,7 +2071,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -900,7 +2086,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -915,7 +2101,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -930,7 +2116,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -945,7 +2131,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -960,7 +2146,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -975,7 +2161,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -990,7 +2176,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1005,7 +2191,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1020,7 +2206,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1035,7 +2221,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1050,7 +2236,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1065,7 +2251,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1080,7 +2266,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1095,7 +2281,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1110,7 +2296,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1125,7 +2311,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1140,7 +2326,7 @@ const InForTable = (props) => { search: false, dataIndex: 'time9', valueType: 'dateRange', - initialValue: day, + width: 140, @@ -1159,7 +2345,12 @@ const InForTable = (props) => { width: 120, fixed: 'right', render: (dom, record) => { - return
    + return
    } }, @@ -1168,13 +2359,14 @@ const InForTable = (props) => { hideInTable: true, dataIndex: "direction", order: 6, - renderFormItem: (item, { type, defaultRender, ...rest }, form) => { + renderFormItem: (item, { type, defaultRender, ...rest }, form, record) => { return (
    + return
    } }, @@ -2331,13 +3528,14 @@ const InForTable = (props) => { hideInTable: true, dataIndex: "direction", order: 6, - renderFormItem: (item, { type, defaultRender, ...rest }, form) => { + renderFormItem: (item, { type, defaultRender, ...rest }, form, record) => { return (
    + return
    } }, @@ -3494,13 +4697,14 @@ const InForTable = (props) => { hideInTable: true, dataIndex: "direction", order: 6, - renderFormItem: (item, { type, defaultRender, ...rest }, form) => { + renderFormItem: (item, { type, defaultRender, ...rest }, form, record) => { return (
    - + + + ) } @@ -3628,4 +4837,4 @@ function mapStateToProps(state) { depData, }; } -export default connect(mapStateToProps)(InForTable); \ No newline at end of file +export default connect(mapStateToProps)(TransporTationTable); \ No newline at end of file diff --git a/web/client/src/sections/fillion/containers/bridge.js b/web/client/src/sections/fillion/containers/bridge.js index d1f968e7..d65cad4f 100644 --- a/web/client/src/sections/fillion/containers/bridge.js +++ b/web/client/src/sections/fillion/containers/bridge.js @@ -4,12 +4,12 @@ import '../style.less'; import { getDepMessage, getReportStatistic } from "../actions/infor" import BridgeTable from '../components/bridgeTable'; const superagent = require('superagent'); -const infor = (props) => { +const bridge = (props) => { const { dispatch, user } = props const [data, setData] = useState() useEffect(() => { // dispatch(getDepMessage()) - dispatch(getReportStatistic()) + setData(props) }, []); //批量导出 @@ -39,4 +39,4 @@ function mapStateToProps(state) { user: auth.user, } } -export default connect(mapStateToProps)(infor); \ No newline at end of file +export default connect(mapStateToProps)(bridge); \ No newline at end of file diff --git a/web/client/src/sections/fillion/containers/enforce.js b/web/client/src/sections/fillion/containers/enforce.js index b572c374..677f8612 100644 --- a/web/client/src/sections/fillion/containers/enforce.js +++ b/web/client/src/sections/fillion/containers/enforce.js @@ -9,7 +9,7 @@ const enforce = (props) => { const [data, setData] = useState() useEffect(() => { // dispatch(getDepMessage()) - dispatch(getReportStatistic()) + setData(props) }, []); //批量导出 diff --git a/web/client/src/sections/fillion/containers/highways.js b/web/client/src/sections/fillion/containers/highways.js index 7b30888e..f734f12a 100644 --- a/web/client/src/sections/fillion/containers/highways.js +++ b/web/client/src/sections/fillion/containers/highways.js @@ -9,7 +9,7 @@ const highways = (props) => { const [data, setData] = useState() useEffect(() => { // dispatch(getDepMessage()) - dispatch(getReportStatistic()) + setData(props) }, []); //批量导出 diff --git a/web/client/src/sections/fillion/containers/infor.js b/web/client/src/sections/fillion/containers/infor.js index eb72fbcd..1d492a93 100644 --- a/web/client/src/sections/fillion/containers/infor.js +++ b/web/client/src/sections/fillion/containers/infor.js @@ -11,7 +11,7 @@ const infor = (props) => { const [modalRecord, setModalRecord] = useState(); useEffect(() => { // dispatch(getDepMessage()) - dispatch(getReportStatistic()) + setData(props) }, []); // //打开弹窗 diff --git a/web/client/src/sections/fillion/containers/infor/details.js b/web/client/src/sections/fillion/containers/infor/details.js deleted file mode 100644 index 016b8288..00000000 --- a/web/client/src/sections/fillion/containers/infor/details.js +++ /dev/null @@ -1,124 +0,0 @@ -// import React from 'react'; -// import { connect } from 'react-redux'; -// import { Spin, Table } from 'antd'; -// import { ModalForm } from '@ant-design/pro-form'; -// import moment from 'moment'; -// const UserModal = (props) => { -// const { visible, onVisibleChange } = props -// const datas = props.modalRecord || {} -// const scopeOfExamination = { ...datas }.hiddenDangerItem12 -// const arr = [ -// ' 1、合用场所的所有权人、使用人是否遵守消防法律、法规、规章;', -// ' 2、住宿场所是否违规搭建;', -// ' 3、合用场所是否配置灭火器、消防应急照明等消防器材和设施;', -// ' 4、合用场所的电器产品的安装、使用及其线路和管路的设计、敷设、维护保养、检测,是否符合消防技术标准和管理规定;', -// ' 5、合用场所住宿是否超过2人;(judge_0) 若超过,人员住宿是否设置在首层,并直通室外安全出口;(judge_1)', -// ' 6、电动自行车是否违规室内充电、停放;', -// ' 7、合用场所是否违规生产、储存、经营易燃易爆危险品;', -// ' 8、合用场所除厨房外是否违规使用或者放置瓶装液化石油气、可燃液体;', -// ' 9、放置瓶装液化石油气的厨房是否采取防火分隔措施,并设置自然排风窗;', -// ' 10、合用场所疏散通道、安全出口是否保持畅通;', -// ' 11、合用场所的外窗或阳台是否设置金属栅栏;(judge_0) 若设置,是否能从内部易于开启。(judge_1)', -// ' 12、存在其他安全隐患;', -// ] -// const columns = [ -// { -// title: '场所名称', -// dataIndex: 'reportName', -// hideInSearch: true, -// render: () => { -// return
    {datas.placeName}
    -// } -// }, { -// title: '场所基本情况', -// dataIndex: 'reportName', -// hideInSearch: true, -// render: () => { -// return
    -//
  • 使用性质:{datas.placeType}
  • -//
  • 地址:{datas.address}
  • -//
  • 负责人:{datas.placeOwner}
  • -//
  • 电话:{datas.phone}
  • -//
  • 面积:{datas.dimension}
  • -//
  • 层数:{datas.floors}
  • -//
  • 常驻人口:{datas.numberOfPeople}
  • -//
    -// } -// }, { -// title: '检查内容', -// dataIndex: 'reportName', -// hideInSearch: true, -// render: () => { -// return datas.hiddenDangerItem12 ? -// scopeOfExamination.map((item, index) => { -// let message = arr[index] -// if (arr[index].indexOf('judge_') > -1) { -// if (item.child && item.child.itemIndex) { -// message = message.replace(`judge_${item.child.itemIndex}`, item.child.value ? "是" : "否") -// } else { -// message = message.replace(`judge_1`, '---') -// } - -// if (arr[index].indexOf('judge_0') > -1) { -// return
  • {message.replace(`judge_0`, item.value ? "是" : "否")}
  • -// } -// } -// return
  • {message}({item.value ? "是" : "否"})
  • -// }) -// : '---' -// } -// }, { -// title: '存在具体问题', -// dataIndex: 'reportName', -// hideInSearch: true, -// render: () => { -// return
    {datas.description ? datas.description : '---'}
    -// } -// }, -// ] -// const data = [ -// { -// key: '1', - -// address: 'New York No. 1 Lake Park', -// tags: ['nice', 'developer'], -// }, -// ]; -// return ( -// -// -//
    排查单位:{(datas || {}).checkAreaName || ''} -// 填报日期:{moment((datas || {}).time).format('YYYY-MM-DD') || ''}
    -//
    -//
    -// 排查人:{(datas || {}).checkUserName || ''} -// 手机号:{(datas || {}).checkUserPhone || ''}
    -// -// -// ) -// } -// function mapStateToProps (state) { -// const { depMessage } = state; -// const pakData = (dep) => { -// return dep.map((d) => { -// return { -// title: d.name, -// value: d.id, -// children: pakData(d.subordinate) -// } -// }) -// } -// let depData = pakData(depMessage.data || []) -// return { -// loading: depMessage.isRequesting, -// depData, -// }; -// } -// export default connect(mapStateToProps)(UserModal); \ No newline at end of file diff --git a/web/client/src/sections/fillion/containers/maintenance.js b/web/client/src/sections/fillion/containers/maintenance.js index 6a231dec..1554927e 100644 --- a/web/client/src/sections/fillion/containers/maintenance.js +++ b/web/client/src/sections/fillion/containers/maintenance.js @@ -9,7 +9,7 @@ const Maintenance = (props) => { const [data, setData] = useState() useEffect(() => { // dispatch(getDepMessage()) - dispatch(getReportStatistic()) + setData(props) }, []); //批量导出 diff --git a/web/client/src/sections/fillion/containers/operational.js b/web/client/src/sections/fillion/containers/operational.js index 82fb180e..2c6a2fda 100644 --- a/web/client/src/sections/fillion/containers/operational.js +++ b/web/client/src/sections/fillion/containers/operational.js @@ -9,7 +9,7 @@ const operational = (props) => { const [data, setData] = useState() useEffect(() => { // dispatch(getDepMessage()) - dispatch(getReportStatistic()) + setData(props) }, []); //批量导出 diff --git a/web/client/src/sections/fillion/containers/patrol.js b/web/client/src/sections/fillion/containers/patrol.js index 0e7b77c0..bd57775b 100644 --- a/web/client/src/sections/fillion/containers/patrol.js +++ b/web/client/src/sections/fillion/containers/patrol.js @@ -9,7 +9,7 @@ const patrol = (props) => { const [data, setData] = useState() useEffect(() => { // dispatch(getDepMessage()) - dispatch(getReportStatistic()) + setData(props) }, []); //批量导出 diff --git a/web/client/src/sections/fillion/containers/promotional.js b/web/client/src/sections/fillion/containers/promotional.js index cdb3492d..98b1bc6f 100644 --- a/web/client/src/sections/fillion/containers/promotional.js +++ b/web/client/src/sections/fillion/containers/promotional.js @@ -10,7 +10,7 @@ const promotional = (props) => { const [data, setData] = useState() useEffect(() => { // dispatch(getDepMessage()) - dispatch(getReportStatistic()) + setData(props) }, []); // //批量导出 diff --git a/web/client/src/sections/fillion/containers/public.js b/web/client/src/sections/fillion/containers/public.js index 073fd9d3..b0a5dc1e 100644 --- a/web/client/src/sections/fillion/containers/public.js +++ b/web/client/src/sections/fillion/containers/public.js @@ -9,7 +9,7 @@ const Public = (props) => { const [data, setData] = useState() useEffect(() => { // dispatch(getDepMessage()) - dispatch(getReportStatistic()) + setData(props) }, []); //批量导出 diff --git a/web/client/src/sections/fillion/containers/transportation.js b/web/client/src/sections/fillion/containers/transportation.js index b57967eb..405f7082 100644 --- a/web/client/src/sections/fillion/containers/transportation.js +++ b/web/client/src/sections/fillion/containers/transportation.js @@ -9,7 +9,7 @@ const transportation = (props) => { const [data, setData] = useState() useEffect(() => { // dispatch(getDepMessage()) - dispatch(getReportStatistic()) + setData(props) }, []); //批量导出 diff --git a/web/client/src/sections/fillion/containers/videois.js b/web/client/src/sections/fillion/containers/videois.js index 61411e51..289d19ae 100644 --- a/web/client/src/sections/fillion/containers/videois.js +++ b/web/client/src/sections/fillion/containers/videois.js @@ -9,7 +9,7 @@ const Videois = (props) => { const [data, setData] = useState() useEffect(() => { // dispatch(getDepMessage()) - dispatch(getReportStatistic()) + setData(props) }, []); //批量导出 diff --git a/web/client/src/sections/quanju/containers/footer/conserve/left/left-top.js b/web/client/src/sections/quanju/containers/footer/conserve/left/left-top.js index 6cf714ea..89333c1e 100644 --- a/web/client/src/sections/quanju/containers/footer/conserve/left/left-top.js +++ b/web/client/src/sections/quanju/containers/footer/conserve/left/left-top.js @@ -1,6 +1,7 @@ import React, { useEffect, useRef } from 'react'; import Module from '../../../public/module' import * as echarts from 'echarts'; +import { Badge } from 'antd'; const LeftTop = () => { @@ -134,9 +135,6 @@ const LeftTop = () => { roundCap: true, barWidth: 30, showBackground: true, - backgroundStyle: { - color: "rgba(66, 66, 66, .3)", - }, data: [40], coordinateSystem: "polar", itemStyle: { @@ -154,6 +152,8 @@ const LeftTop = () => { }, }, }, + + ], }; chartInstance.setOption(frequentlyOption); @@ -163,11 +163,27 @@ const LeftTop = () => { return ( <> -
    -
    -
    -
    +
    +
    +
    + +
    +
    +
    + + +
    ) diff --git a/web/client/src/sections/quanju/containers/footer/guanli/LeftItem.js b/web/client/src/sections/quanju/containers/footer/guanli/LeftItem.js index d774030c..c50f7e59 100644 --- a/web/client/src/sections/quanju/containers/footer/guanli/LeftItem.js +++ b/web/client/src/sections/quanju/containers/footer/guanli/LeftItem.js @@ -5,76 +5,180 @@ export default function LeftItem() { const seasonChartRef = useRef(null); useEffect(() => { let chartInstance = echarts.init(seasonChartRef.current); - const seasonOption = { - title: [ - { - text: "已处理", - x: "center", - top: "55%", - textStyle: { - color: "#E9F7FF", - fontSize: 14, - }, + // const seasonOption = { + // title: [ + // { + // text: "已处理", + // x: "center", + // top: "55%", + // textStyle: { + // color: "#E9F7FF", + // fontSize: 14, + // }, + // }, + // { + // text: "2333", + // x: "center", + // y: "35%", + // textStyle: { + // fontSize: "30", + // color: "#FFFFFF", + // fontFamily: "YouSheBiaoTiHei", + // }, + // }, + // ], + // polar: { + // radius: ["78%", "86%"], + // center: ["50%", "50%"], + // }, + // angleAxis: { + // max: 100, + // clockWise:false, //逆时针加载 + // show: false, + // }, + // radiusAxis: { + // type: "category", + // show: true, + // axisLabel: { + // show: false, + // }, + // axisLine: { + // show: false, + // }, + // axisTick: { + // show: false, + // }, + // }, + // series: [ + // { + // name: "", + // type: "bar", + // roundCap: true, + // clockWise:false, //逆时针加载 + // barWidth: 30, + // showBackground: true, + // data: [40], + // coordinateSystem: "polar", + // itemStyle: { + // normal: { + // color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [ + // { + // offset: 0, + // color: "#AAC8FF", + // }, + // { + // offset: 1, + // color: "#0041BB", + // }, + // ]), + // }, + // }, + // }, + // ], + // }; + const option = { + title: { + text: '75%', + top:'35%', + + textStyle: { + fontSize: 22, + fontFamily: 'PingFangSC-Medium, PingFang SC', + fontWeight: 500, + // marginTop:-60, + color: '#FFFFFF' }, - { - text: "2333", - x: "center", - y: "35%", - textStyle: { - fontSize: "30", - color: "#FFFFFF", - fontFamily: "YouSheBiaoTiHei", - }, + subtext: '已处理', + subtextStyle: { + fontSize: 16, + fontFamily: "PingFangSC-Regular, PingFang SC", + fontWeight: 400, + color: 'rgba(216,240,255,0.8000)' + }, + // itemGap: -2, // 主副标题距离 + left: 'center', + // top: 'center' + }, + angleAxis: { + max: 100, // 满分 + clockwise: false, // 逆时针 + // 隐藏刻度线 + axisLine: { + show: false + }, + axisTick: { + show: false }, - ], - polar: { - radius: ["78%", "86%"], - center: ["50%", "50%"], - }, - angleAxis: { - max: 100, - show: false, - }, - radiusAxis: { - type: "category", - show: true, axisLabel: { - show: false, + show: false }, + splitLine: { + show: false + } + }, + radiusAxis: { + type: 'category', + // 隐藏刻度线 axisLine: { - show: false, + show: false }, axisTick: { - show: false, + show: false + }, + axisLabel: { + show: false }, + splitLine: { + show: false + } }, - series: [ - { - name: "", - type: "bar", - roundCap: true, - barWidth: 30, - showBackground: true, - data: [40], - coordinateSystem: "polar", - itemStyle: { - normal: { - color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [ - { - offset: 0, - color: "#AAC8FF", - }, - { - offset: 1, - color: "#0041BB", - }, - ]), + polar: { + center: ['50%', '50%'], + radius: '180%' //图形大小 + // radius: ["78%", "86%"], + }, + series: [{ + type: 'bar', + data: [{ + name: '作文得分', + value: 75, + itemStyle: { + normal: { + color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [ { + offset: 0, + color: "#AAC8FF", + }, + { + offset: 1, + color: "#0041BB", + }]) + } }, - }, - }, - ], - }; - chartInstance.setOption(seasonOption); + }], + coordinateSystem: 'polar', + roundCap: true, + barWidth: 8, + barGap: '-100%', // 两环重叠 + z: 2, + },{ // 灰色环 + type: 'bar', + data: [{ + value: 100, + itemStyle: { + color: '#e2e2e2', + shadowColor: 'rgba(0, 0, 0, 0.2)', + shadowBlur: 5, + shadowOffsetY: 2 + } + }], + coordinateSystem: 'polar', + roundCap: true, + barWidth: 8, + barGap: '-100%', // 两环重叠 + z: 1 + }] + } + chartInstance.setOption(option); }, []) return ( diff --git a/web/client/src/sections/quanju/containers/footer/leadership/centerleft/center-left-bottom.js b/web/client/src/sections/quanju/containers/footer/leadership/centerleft/center-left-bottom.js index b9d6d319..540c3f39 100644 --- a/web/client/src/sections/quanju/containers/footer/leadership/centerleft/center-left-bottom.js +++ b/web/client/src/sections/quanju/containers/footer/leadership/centerleft/center-left-bottom.js @@ -1,12 +1,27 @@ import React from 'react' import Module from '../../../public/module' +import Centerleftecharts from "./echarts/centerleftecharts" +import Bottomlunbo from './lunbo/bottomlunbo' +import Leftlunbo from './lunbo/toplunbo' const Leftbottom = () => { const style = { height: "28%", marginTop: "2%" } return ( <> - - + +
    +
    + +
    +
    +
    + +
    +
    + +
    +
    +
    ) diff --git a/web/client/src/sections/quanju/containers/footer/leadership/centerleft/echarts/centerleftecharts.js b/web/client/src/sections/quanju/containers/footer/leadership/centerleft/echarts/centerleftecharts.js new file mode 100644 index 00000000..a041ffce --- /dev/null +++ b/web/client/src/sections/quanju/containers/footer/leadership/centerleft/echarts/centerleftecharts.js @@ -0,0 +1,203 @@ +import React, { useEffect, useRef } from 'react' +import * as echarts from 'echarts'; + +const Leftbottomecharts = () => { + const chartRef = useRef(null); + useEffect(() => { + var chartInstance = echarts.init(chartRef.current); + var colorArray = [ + { + top: "#1978E5", //黄 + bottom: "#10274B", + }, + { + top: "#C31E00", //绿 + bottom: "#10274B", + }, + { + top: "#00B5E0 ", //蓝 + bottom: "#10274B", + }, + { + top: "#19E5D6", //深蓝 + bottom: "#10274B", + }, + // { + // top: "#b250ff", //粉 + // bottom: "rgba(11,42,84,.3)", + // }, + ]; + const option = { + tooltip: { + show: true, + formatter: "{b}:{c}", + }, + grid: { + left: "5%", + top: "12%", + right: "1%", + bottom: "8%", + containLabel: true, + }, + + xAxis: { + type: "value", + show: true, + position: "bottom", + axisTick: { + show: true, + lineStyle: { + color: "rgba(176,215,255,0.25)", + // type: "dashed", + }, + }, + axisLine: { + show: false, + lineStyle: { + color: "rgba(216,240,255,0.8000)", + }, + }, + splitLine: { + show: true, + lineStyle: { + color: "rgba(176,215,255,0.25)", + type: "dashed", + }, + }, + }, + yAxis: [ + { + type: "category", + axisTick: { + show: false, + alignWithLabel: false, + length: 5, + }, + splitLine: { + //网格线 + show: false, + }, + inverse: "true", //排序 + // nameTextStyle: { + // color: ["rgba(216,240,255,0.8)"], + // }, + axisLine: { + // show: true, + lineStyle: { + color: "rgba(216,240,255,0.8000)", + width: 2, + }, + }, + data: ["客运车", "危险货运", "出租车", "公交"], + }, + ], + series: [ + { + type: "bar", + barWidth: 10, + barGap: "100%", + // zlevel: 1, + barCategoryGap: "50%", + color: "#042B7F", + data: [150, 150, 150, 150], + tooltip: { + show: false, + }, + }, + { + name: "能耗值", + type: "bar", + // zlevel: 2, + barWidth: 10, + barGap: "-100%", + barCategoryGap: "50%", + data: [60, 132, 89, 134], + markPoint: { + Symbol: "",/* 可以通过’image: *///url’设置为图片,其中url为图片的链接 + data: [{ type: "max", name: "最大值" }], + }, + itemStyle: { + normal: { + show: true, + color: function (params) { + let num = colorArray.length; + return { + type: "linear", + colorStops: [ + { + offset: 0, + color: colorArray[params.dataIndex % num].bottom, + }, + { + offset: 1, + color: colorArray[params.dataIndex % num].top, + }, + { + offset: 0, + color: colorArray[params.dataIndex % num].bottom, + }, + { + offset: 1, + color: colorArray[params.dataIndex % num].top, + }, + { + offset: 0, + color: colorArray[params.dataIndex % num].bottom, + }, + { + offset: 1, + color: colorArray[params.dataIndex % num].top, + }, + { + offset: 0, + color: colorArray[params.dataIndex % num].bottom, + }, + { + offset: 1, + color: colorArray[params.dataIndex % num].top, + }, + { + offset: 0, + color: colorArray[params.dataIndex % num].bottom, + }, + { + offset: 1, + color: colorArray[params.dataIndex % num].top, + }, + { + offset: 0, + color: colorArray[params.dataIndex % num].bottom, + }, + { + offset: 1, + color: colorArray[params.dataIndex % num].top, + }, + ], + globalCoord: false, + }; + }, + barBorderRadius: 70, + borderWidth: 0, + borderColor: "#333", + }, + }, + }, + ], + }; + chartInstance.setOption(option); + window.onresize = function () { + chartInstance.resize(); + } + }, []); + + + return ( + <> +
    + + ); +} + +export default Leftbottomecharts \ No newline at end of file diff --git a/web/client/src/sections/quanju/containers/footer/leadership/centerleft/lunbo/bottomlunbo.js b/web/client/src/sections/quanju/containers/footer/leadership/centerleft/lunbo/bottomlunbo.js new file mode 100644 index 00000000..b30fb333 --- /dev/null +++ b/web/client/src/sections/quanju/containers/footer/leadership/centerleft/lunbo/bottomlunbo.js @@ -0,0 +1,59 @@ +import React, { useState, useEffect } from 'react' +import Lunbotop from "./lunbo" + +const Bottomlunbo = () => { + const [list, setList] = useState([ + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + ]) + const renderBody = () => { + return ( +
    + { + list.map((item, index) => { + return
    {item.name}
    + }) + } +
    + ) + } + return ( + <> +
    +
    + 业户信息: +
    +
    +
    + +

    出租车

    +
    +
    + +
    + + ) +} +export default Bottomlunbo \ No newline at end of file diff --git a/web/client/src/sections/quanju/containers/footer/leadership/centerleft/lunbo/lunbo.js b/web/client/src/sections/quanju/containers/footer/leadership/centerleft/lunbo/lunbo.js new file mode 100644 index 00000000..6bf6d406 --- /dev/null +++ b/web/client/src/sections/quanju/containers/footer/leadership/centerleft/lunbo/lunbo.js @@ -0,0 +1,180 @@ +'use strict' +import React, { Component } from 'react'; +// import { Col, Row, Tag, Tooltip } from '@douyinfe/semi-ui'; +import { Col, Row, Tag, Toolip } from 'antd'; +import './style.less'; +export default class AutoRollComponent extends Component { + + constructor(props) { + super(props); + this.scrollElem = null; + this.stopscroll = false; + this.preTop = 0; + this.cloneEle = null; + this.currentTop = 0; + this.marqueesHeight = 0; + this.interval = null; + } + + marque = (height) => { + try { + this.scrollElem = document.getElementById(this.props.divId); + this.marqueesHeight = height; + if (this.scrollElem) { + this.scrollElem.style.height = this.marqueesHeight; + this.scrollElem.style.overflow = 'hidden'; + } + + if (!this.props.closeroll) { + this.repeat() + } + } catch (e) { console.log(e) } + } + + + repeat = () => { + this.scrollElem.scrollTop = 0; + + this.interval = setInterval(() => { + if (this.stopscroll) return; + this.currentTop = this.currentTop + 1; + this.preTop = this.scrollElem.scrollTop; + this.scrollElem.scrollTop = this.scrollElem.scrollTop + 1; + if (this.preTop === this.scrollElem.scrollTop) { + this.scrollElem.scrollTop = this.marqueesHeight; + this.scrollElem.scrollTop = this.scrollElem.scrollTop + 1; + } + }, 80); + } + + + componentWillUnmount() { + clearInterval(this.interval); + } + + componentDidMount() { + this.marque(10); + } + + onMouseOver = () => { + this.stopscroll = true; + } + + onMouseOut = () => { + this.stopscroll = false; + } + + loadDataColumn = (c, index, q) => { + const { changeStyleCol, heads, spans, data, showWord, color, dataTextAlign, customColorBox, } = this.props; + if (c === changeStyleCol) { + if (color) { + {q.data[index]} + } else { + if (['时间'].indexOf(c) != -1) { + return {q.data[index]} + } + // if (c.indexOf("时间") == -1) { + // if (customColorBox) { + // return + // } + // if (q.data[index].length > showWord) { + // return {q.data[index].substring(0, showWord) + '...'} + // } else { + // return {q.data[index]} + // } + // } + } + + } else { + if (c.indexOf("时间") == -1) + if (q.data[index].length > showWord) { + return {q.data[index].substring(0, showWord) + '...'} + } + return {q.data[index]} + } + + // c === changeStyleCol ? + // color ? + // {q.data[index]} + // : q.levelbg ? + // q.isSiteAlermListMock ? 已处理 : + // {q.data[index]} + // : {q.data[index]} + + + // : ['时间'].indexOf(c) != -1 ? !customColorBox ? {q.data[index]} : + // + + // : c.indexOf("时间") == -1 && q.data[index].length > showWord ? + // {q.data[index].substring(0, showWord) + '...'} + // : {q.data[index]} + } + + getContent = () => { + const { changeStyleCol, heads, spans, data, showWord, color, dataTextAlign, customColorBox, } = this.props; + let result =
    ; + if (data) { + result = data.map((q, idx) => { + return ( +
    + + {q.data[1] == -1 ? null : heads.map((c, index) => { + let extraStyle = {} + if (q.isSiteAlermListMock && c == "状态") { + extraStyle = { color: "green" } + } + + return
    + { + this.loadDataColumn(c, index, q) + } + + }) + } + + + ) + }) + } else { + result =
    + +
    + } + return result; + } + + render() { + + const { heads, spans, divId, divHeight, content, color, titleLeft, containerStyle = {} } = this.props; + return ( +
    + {heads ? + + {heads.map((c, index) => { + return
    {c} + }) + } + + : ''} +
    +
    + {content ? content : ''} + {this.getContent()} +
    +
    + + ) + } +} diff --git a/web/client/src/sections/quanju/containers/footer/leadership/centerleft/lunbo/style.less b/web/client/src/sections/quanju/containers/footer/leadership/centerleft/lunbo/style.less new file mode 100644 index 00000000..2ad0bd00 --- /dev/null +++ b/web/client/src/sections/quanju/containers/footer/leadership/centerleft/lunbo/style.less @@ -0,0 +1,6 @@ +.hidden-scroll-bar-y{ + overflow-y: scroll !important; + scrollbar-width: none !important; +} + +.hidden-scroll-bar-y::-webkit-scrollbar { width: 0 !important } \ No newline at end of file diff --git a/web/client/src/sections/quanju/containers/footer/leadership/centerleft/lunbo/toplunbo.js b/web/client/src/sections/quanju/containers/footer/leadership/centerleft/lunbo/toplunbo.js new file mode 100644 index 00000000..910a3937 --- /dev/null +++ b/web/client/src/sections/quanju/containers/footer/leadership/centerleft/lunbo/toplunbo.js @@ -0,0 +1,57 @@ +import React, { useState, useEffect } from 'react' +import Lunbotop from "./lunbo" + +const Toplunbo = () => { + const [list, setList] = useState([ + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + { name: "南昌宁昌物流运输有限公司" }, + ]) + const renderBody = () => { + return ( +
    + { + list.map((item, index) => { + return
    {item.name}
    + }) + } +
    + ) + } + return ( + <> +
    +
    +
    + +

    危险货运

    +
    +
    + +
    + + ) +} +export default Toplunbo \ No newline at end of file diff --git a/web/client/src/sections/quanju/containers/footer/leadership/left.js b/web/client/src/sections/quanju/containers/footer/leadership/left.js index 5b6c1649..ab464e2b 100644 --- a/web/client/src/sections/quanju/containers/footer/leadership/left.js +++ b/web/client/src/sections/quanju/containers/footer/leadership/left.js @@ -1,6 +1,6 @@ import React from 'react' import Lefttop from './left/left-top' -import Leftcenter from "./left/left-center" +// import Leftcenter from "./left/left-center" import Leftbottom from './left/left-bottom' const Left = () => { @@ -8,7 +8,7 @@ const Left = () => { <>
    - +
    diff --git a/web/client/src/sections/quanju/containers/footer/leadership/left/echarts/leftbottomecharts.js b/web/client/src/sections/quanju/containers/footer/leadership/left/echarts/leftbottomecharts.js index bfec0134..906278be 100644 --- a/web/client/src/sections/quanju/containers/footer/leadership/left/echarts/leftbottomecharts.js +++ b/web/client/src/sections/quanju/containers/footer/leadership/left/echarts/leftbottomecharts.js @@ -3,67 +3,139 @@ import * as echarts from 'echarts'; const Leftbottomecharts = () => { const chartRef = useRef(null); - useEffect(() => { - let chartInstance = echarts.init(chartRef.current); + var chartInstance = echarts.init(chartRef.current); const option = { - - xAxis: { - type: "category", - data: ["街道1", "街道2", "街道3", "街道4", "街道5", "街道6", "街道7"], + title: { }, - yAxis: [ - { type: "value" }, + tooltip: { + trigger: "axis", + axisPointer: { + lineStyle: { + color: "#57617B", + }, + }, + }, + legend: { + icon: "rect", + itemWidth: 14, + itemHeight: 5, + itemGap: 13, + data: ["移动"], + right: "4%", + // textStyle: { + // fontSize: 12, + // color: "#F1F1F3", + // }, + }, + grid: { + top: "18%", + left: "3%", + right: "4%", + bottom: "3%", + containLabel: true, + }, + xAxis: [ { - type: "value", - nameTextStyle: { - color: "#ccc", + type: "category", + boundaryGap: true, + axisTick: { + show: false, }, - splitNumber: 5, - splitLine: { - show: true, + axisLine: { lineStyle: { - type: "dashed", - width: 1, - color: ["#ccc", "#ccc"], + color: "rgba(176,215,255,0.4)", }, }, - axisLabel: { + data: [ + "13:00", + "13:05", + "13:10", + "13:15", + ], + normal: { + lineStyle: { + color: "red"//折线的颜色 + } + } + }, + ], + yAxis: [ + { + // type: "value", + // show: true, + // type: "value", + splitLine: { show: true, - textStyle: { - fontSize: 12, - }, + lineStyle: { + color: "rgba(176,215,255,0.2500)", + type: "dashed" + } + }, //去除网格线 + // nameTextStyle: { + // color: "#abb8ce", + // }, + // axisLabel: { + // color: "#abb8ce", + // }, + axisTick: { + //y轴刻度线 + show: false, + }, + axisLine: { + // y轴 + show: false, }, }, ], - tooltip: { - trigger: "axis", - axisPointer: { - type: "shadow", - }, - textStyle: { - color: "#fff", - align: "left", - fontSize: 14, - }, - backgroundColor: "rgba(0,0,0,0.8)", - }, series: [ { - name: "完成率", - data: [50, 130, 124, 18, 35, 47, 160], - yAxisIndex: 1, + // name: "移动", type: "line", smooth: true, + symbol: "circle", + symbolSize: 5, + showSymbol: false, + areaStyle: { + normal: { + color: new echarts.graphic.LinearGradient( + 0, + 0, + 0, + 1, + [ + { + offset: 0, + color: "rgba(176,215,255,0.2500)", + }, + { + offset: 0.8, + color: "rgba(0,150,255,0)", + }, + ], + false + ), + shadowBlur: 10, + }, + }, + data: [220, 182, 191, 134], }, ], }; chartInstance.setOption(option); + window.addEventListener('resize', function () { + chartInstance.resize(); + }) }, []); + return ( <> -
    +
    +

    公里数Km

    +
    ); } diff --git a/web/client/src/sections/quanju/containers/footer/leadership/left/left-bottom.js b/web/client/src/sections/quanju/containers/footer/leadership/left/left-bottom.js index 1164dab6..8fbcd053 100644 --- a/web/client/src/sections/quanju/containers/footer/leadership/left/left-bottom.js +++ b/web/client/src/sections/quanju/containers/footer/leadership/left/left-bottom.js @@ -6,7 +6,7 @@ const Leftbottom = () => { const style = { height: "28%", marginTop: "5%" } return ( <> - + diff --git a/web/client/src/sections/quanju/containers/footer/leadership/left/left-center.js b/web/client/src/sections/quanju/containers/footer/leadership/left/left-center.js index 9beb1113..052e59c4 100644 --- a/web/client/src/sections/quanju/containers/footer/leadership/left/left-center.js +++ b/web/client/src/sections/quanju/containers/footer/leadership/left/left-center.js @@ -1,13 +1,95 @@ -import React from 'react' +import React, { useEffect, useState } from 'react' import Module from '../../../public/module' +import Lunbo from "../centerleft/lunbo/lunbo" +// import "./left.less" const Leftcenter = () => { const style = { height: "30%", marginTop: "5%" } + // const hualun = "auto" + const [num, setNum] = useState(1); + const [tu, setTu] = useState(""); + const [name, setName] = useState(""); + const [list, setList] = useState([ + { name: '静夜思', img: "/assets/images/leadership/shiyantu.png" }, + { name: '唐-李白', img: "/assets/images/leadership/shiyantu.png" }, + { name: '窗前明月光', img: "/assets/images/leadership/shiyantu.png" }, + { name: '疑是地上霜', img: "/assets/images/leadership/shiyantu.png" }, + { name: '举头望明月', img: "/assets/images/leadership/shiyantu.png" }, + { name: '低头思故乡', img: "/assets/images/leadership/shiyantu.png" }, + { name: '静夜思', img: "/assets/images/leadership/shiyantu.png" }, + { name: '唐-李白', img: "/assets/images/leadership/shiyantu.png" }, + { name: '窗前明月光', img: "/assets/images/leadership/shiyantu.png" }, + { name: '疑是地上霜', img: "/assets/images/leadership/shiyantu.png" }, + { name: '举头望明月', img: "/assets/images/leadership/shiyantu.png" }, + { name: '低头思故乡', img: "/assets/images/leadership/shiyantu.png" }, + ]) + useEffect(() => { + const timer = setInterval(() => { + if (num == 12) { + setNum(1); + setTu(list[0].img); + } else { + setNum(num + 1); + setTu(list[num].img); + } + }, 6000); + return () => clearInterval(timer); + }, [num]); + const renderBody = () => { + return ( +
    { + list.map((item, index) => { + return ( + //
    + // {/*
    */} +
  • { + setTu(item.img); + setNum(index + 1); + setName(item.name) + // console.log(list); + }}>{item.name}
  • + // {/*
    */} + //
    + ) + + }) + } +
    + ) + } return ( <> - +
    + {/*

    {title || []}

    */} + + 主要路段拥堵情况分析 + +
    +
    +
    + { + list.map((item, index) => { + return index + 1 == num ? +
    + +

    {item.name}

    +
    : "" + + }) - + } +
    + +
    ) } diff --git a/web/client/src/sections/quanju/containers/footer/leadership/left/left-top.js b/web/client/src/sections/quanju/containers/footer/leadership/left/left-top.js index f879054b..c486d189 100644 --- a/web/client/src/sections/quanju/containers/footer/leadership/left/left-top.js +++ b/web/client/src/sections/quanju/containers/footer/leadership/left/left-top.js @@ -1,12 +1,47 @@ import React from 'react' import Module from '../../../public/module' +import Leftcenter from './left-center' const Lefttop = () => { - const style = { height: "25%", height: "35%" } + const style = { height: "68%" } return ( <> - {/*
    */} +
    +
    +
    + +

    路况

    +

    畅通

    +
    +
    + +

    平均时速

    +

    55.2Km/h

    +
    +
    + +

    预测明日

    +

    55.2Km/h

    +
    +
    +
    + +
    +
    +
    + +
    +
    ) diff --git a/web/client/src/sections/quanju/containers/footer/leadership/right/left.less b/web/client/src/sections/quanju/containers/footer/leadership/right/left.less new file mode 100644 index 00000000..b5333c1a --- /dev/null +++ b/web/client/src/sections/quanju/containers/footer/leadership/right/left.less @@ -0,0 +1,3 @@ +li{ + list-style-type:none +} \ No newline at end of file diff --git a/web/client/src/sections/quanju/containers/footer/leadership/right/lunbo.js b/web/client/src/sections/quanju/containers/footer/leadership/right/lunbo.js new file mode 100644 index 00000000..ab086a11 --- /dev/null +++ b/web/client/src/sections/quanju/containers/footer/leadership/right/lunbo.js @@ -0,0 +1,139 @@ +'use strict' +import React, { Component } from 'react'; +import { Row, Col } from 'antd'; + +export default class AutoRollComponent extends Component { + + constructor(props) { + super(props); + this.scrollElem = null; + this.stopscroll = false; + this.preTop = 0; + this.cloneEle = null; + this.currentTop = 0; + this.marqueesHeight = 0; + this.interval = null; + this.state = { + enabledScroll: false + } + } + + get enabledScroll() { + let scrollElem = document.getElementById(this.props.divId); + let fatherElem = scrollElem?.parentNode || null; + if (scrollElem && fatherElem) { + return scrollElem.scrollHeight > fatherElem.scrollHeight + } + + return false; + } + + + marque = (height) => { + try { + this.scrollElem = document.getElementById(this.props.divId); + this.marqueesHeight = height; + if (this.scrollElem) { + this.scrollElem.style.height = this.marqueesHeight; + this.scrollElem.style.overflow = 'hidden'; + } + this.repeat(); + } catch (e) { console.log(e) } + } + + + repeat = () => { + this.scrollElem.scrollTop = 0; + let offset = 1.5 + + this.interval = setInterval(() => { + if (this.stopscroll) return; + this.currentTop = this.currentTop + offset; + this.preTop = this.scrollElem.scrollTop; + this.scrollElem.scrollTop = this.scrollElem.scrollTop + offset; + // console.log(`this.scrollElem.scrollTop:${this.scrollElem.scrollTop} === this.preTop:${this.preTop}`); + if (this.preTop === this.scrollElem.scrollTop) { + this.scrollElem.scrollTop = this.marqueesHeight; + this.scrollElem.scrollTop = this.scrollElem.scrollTop + offset; + } + }, 40); + } + + + componentWillUnmount() { + clearInterval(this.interval); + } + + componentWillReceiveProps(nextProps) { + requestAnimationFrame(() => { + if (this.enabledScroll) { + if (!this.state.enabledScroll) { + this.setState({ enabledScroll: true }, () => { + this.marque(10) + }) + } + + } + }) + } + + componentDidMount() { + if (this.enabledScroll) { + this.setState({ enabledScroll: true }, () => { + this.marque(10) + }) + } + } + + onMouseOver = () => { + this.stopscroll = true; + } + + onMouseOut = () => { + this.stopscroll = false; + } + + + render() { + + const { changeStyleCol, heads, spans, data, divId, divHeight, content, containerStyle = {} } = this.props; + + return ( +
    + { + heads ? + + {heads.map((c, index) => { + return
    {c} + }) + } + : '' + } + +
    +
    + {content ? content : ''} + {this.state.enabledScroll && content ? content : ''} + { + data ? + data.map((q, idx) => { + return ( +
    + + {heads.map((c, index) => { + return
    + {index == 1 ? q.data[index] == -1 ? "-" : q.data[index] : index == 2 ? q.data[1] == -1 ? '-' : q.data[index] : q.data[index]} + }) + } + + + ) + }) : '' + } +
    + + + + ) + } +} \ No newline at end of file diff --git a/web/client/src/sections/quanju/containers/footer/leadership/right/right-bottom.js b/web/client/src/sections/quanju/containers/footer/leadership/right/right-bottom.js index 1b534859..470a4c58 100644 --- a/web/client/src/sections/quanju/containers/footer/leadership/right/right-bottom.js +++ b/web/client/src/sections/quanju/containers/footer/leadership/right/right-bottom.js @@ -1,12 +1,80 @@ -import React from 'react' +import React, { useState, useEffect } from 'react' import Module from '../../../public/module' +import Lun from "./lunbo" +import "./left.less" const Rightbottom = () => { const style = { height: "28%", marginTop: "4%" } + const [beijing, setBeijing] = useState() + const [list, setList] = useState([{ name: "苏LD1112121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏LD11121", chaoxian: "30%", penalty: "-6分和扣200元", days: "2022年5月4日" }, + { name: "苏LD112512121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏L1112121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏LD1151121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏LD1112121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏LD11912121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏LD16112121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏L2D111221", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "62", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏LD11152121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏L1D1112121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏LD11512121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏LD13112121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏LD111612121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏LD111216221", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏L63D1112121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏LD163112121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏LD162112121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }, + { name: "苏LD651112121", chaoxian: "30%", penalty: "-6分", days: "2022年5月4日" }]) + const renderBody = () => { + return ( + //
    { + // lists.map((item, index) => { + // return (
    + //
    + //
  • { + // }}>{item.name}
  • + //
    + //
    ) + + // }) + // } + //
    +
    + {list.map((item, index) => { + return
  • { + setBeijing(item.name) + console.log(beijing); + }}> +
    {item.name}
    +
    {item.chaoxian}
    +
    {item.penalty}
    +
    {item.days}
  • + }) + + } +
    + ) + } return ( <> - - + +
    + + 已处理192件 +
    +
    +

    车牌号

    +

    超限

    +

    处罚

    +

    日期

    +
    +
    ) diff --git a/web/client/src/sections/quanju/containers/public/left.less b/web/client/src/sections/quanju/containers/public/left.less new file mode 100644 index 00000000..a675a58d --- /dev/null +++ b/web/client/src/sections/quanju/containers/public/left.less @@ -0,0 +1,25 @@ +#scroll-2::-webkit-scrollbar{ + width:4px; + height:4px; +} +#scroll-2::-webkit-scrollbar-track{ + background: #f6f6f6; + border-radius:2px; +} +#scroll-2::-webkit-scrollbar-thumb{ + background: #aaa; + border-radius:2px; +} +#scroll-2::-webkit-scrollbar-thumb:hover{ + background: #747474; +} +#scroll-2::-webkit-scrollbar-corner{ + background: #f6f6f6; +} +#screen-slope-midde-top-jiangxi{ + & > div > div{ + &:first-child{ + margin-bottom: 1px; + } + } + } \ No newline at end of file diff --git a/web/client/src/sections/quanju/containers/public/lunbo.js b/web/client/src/sections/quanju/containers/public/lunbo.js new file mode 100644 index 00000000..46735f50 --- /dev/null +++ b/web/client/src/sections/quanju/containers/public/lunbo.js @@ -0,0 +1,139 @@ +'use strict' +import React, { Component } from 'react'; +import { Row, Col } from 'antd'; + +export default class AutoRollComponent extends Component { + + constructor(props) { + super(props); + this.scrollElem = null; + this.stopscroll = false; + this.preTop = 0; + this.cloneEle = null; + this.currentTop = 0; + this.marqueesHeight = 0; + this.interval = null; + this.state = { + enabledScroll: false + } + } + + get enabledScroll() { + let scrollElem = document.getElementById(this.props.divId); + let fatherElem = scrollElem?.parentNode || null; + if (scrollElem && fatherElem) { + return scrollElem.scrollHeight > fatherElem.scrollHeight + } + + return false; + } + + + marque = (height) => { + try { + this.scrollElem = document.getElementById(this.props.divId); + this.marqueesHeight = height; + if (this.scrollElem) { + this.scrollElem.style.height = this.marqueesHeight; + this.scrollElem.style.overflow = 'hidden'; + } + this.repeat(); + } catch (e) { console.log(e) } + } + + + repeat = () => { + this.scrollElem.scrollTop = 0; + let offset = 1.5 + + this.interval = setInterval(() => { + if (this.stopscroll) return; + this.currentTop = this.currentTop + offset; + this.preTop = this.scrollElem.scrollTop; + this.scrollElem.scrollTop = this.scrollElem.scrollTop + offset; + // console.log(`this.scrollElem.scrollTop:${this.scrollElem.scrollTop} === this.preTop:${this.preTop}`); + if (this.preTop === this.scrollElem.scrollTop) { + this.scrollElem.scrollTop = this.marqueesHeight; + this.scrollElem.scrollTop = this.scrollElem.scrollTop + offset; + } + }, 300000); + } + + + componentWillUnmount() { + clearInterval(this.interval); + } + + componentWillReceiveProps(nextProps) { + requestAnimationFrame(() => { + if (this.enabledScroll) { + if (!this.state.enabledScroll) { + this.setState({ enabledScroll: true }, () => { + this.marque(10) + }) + } + + } + }) + } + + componentDidMount() { + if (this.enabledScroll) { + this.setState({ enabledScroll: true }, () => { + this.marque(10) + }) + } + } + + onMouseOver = () => { + this.stopscroll = true; + } + + onMouseOut = () => { + this.stopscroll = false; + } + + + render() { + + const { changeStyleCol, heads, spans, data, divId, divHeight, content, containerStyle = {} } = this.props; + + return ( +
    + { + heads ? + + {heads.map((c, index) => { + return
    {c} + }) + } + : '' + } + +
    +
    + {content ? content : ''} + {this.state.enabledScroll && content ? content : ''} + { + data ? + data.map((q, idx) => { + return ( +
    + + {heads.map((c, index) => { + return
    + {index == 1 ? q.data[index] == -1 ? "-" : q.data[index] : index == 2 ? q.data[1] == -1 ? '-' : q.data[index] : q.data[index]} + }) + } + + + ) + }) : '' + } +
    + + + + ) + } +} \ No newline at end of file diff --git a/web/client/src/sections/quanju/containers/public/module.js b/web/client/src/sections/quanju/containers/public/module.js index eb1fefb5..e3aaa454 100644 --- a/web/client/src/sections/quanju/containers/public/module.js +++ b/web/client/src/sections/quanju/containers/public/module.js @@ -1,8 +1,9 @@ import React from 'react' import "./font.css" +import "./left.less" const Module = (props) => { - const { style, children, title } = props + const { style, children, title, hualun,customize } = props return ( <>
    @@ -12,7 +13,7 @@ const Module = (props) => { {title || []}
    -
    +
    {children}
    diff --git a/web/client/src/themes/light.json b/web/client/src/themes/light.json index c59ee5e5..a7c012cd 100644 --- a/web/client/src/themes/light.json +++ b/web/client/src/themes/light.json @@ -1 +1 @@ -{"@line-height-base":"1.66667","@mode":"compact","@font-size-base":"12px","@font-size-lg":"@font-size-base + 2px","@default-padding-lg":"24px","@default-padding-md":"16px","@default-padding-sm":"12px","@default-padding-xs":"8px","@default-padding-xss":"4px","@padding-lg":"16px","@padding-md":"8px","@padding-sm":"8px","@padding-xs":"4px","@padding-xss":"0px","@control-padding-horizontal":"@padding-sm","@control-padding-horizontal-sm":"@default-padding-xs","@margin-lg":"16px","@margin-md":"8px","@margin-sm":"8px","@margin-xs":"4px","@margin-xss":"0px","@height-base":"28px","@height-lg":"32px","@height-sm":"22px","@btn-padding-horizontal-base":"@default-padding-sm - 1px","@btn-padding-horizontal-lg":"@btn-padding-horizontal-base","@btn-padding-horizontal-sm":"@default-padding-xs - 1px","@btn-square-only-icon-size-lg":"16px","@btn-square-only-icon-size":"14px","@btn-square-only-icon-size-sm":"12px","@breadcrumb-font-size":"@font-size-base","@breadcrumb-icon-font-size":"@font-size-base","@dropdown-line-height":"18px","@menu-item-padding":"0 12px","@menu-horizontal-line-height":"38px","@menu-inline-toplevel-item-height":"32px","@menu-item-height":"32px","@menu-item-vertical-margin":"0px","@menu-item-boundary-margin":"0px","@menu-icon-margin-right":"8px","@checkbox-size":"14px","@checkbox-group-item-margin-right":"6px","@picker-panel-cell-height":"22px","@picker-panel-cell-width":"32px","@picker-text-height":"32px","@picker-time-panel-cell-height":"24px","@picker-panel-without-time-cell-height":"48px","@form-item-margin-bottom":"16px","@form-vertical-label-padding":"0 0 4px","@rate-star-size":"16px","@radio-size":"14px","@radio-wrapper-margin-right":"6px","@switch-height":"20px","@switch-sm-height":"14px","@switch-min-width":"40px","@switch-sm-min-width":"24px","@switch-inner-margin-min":"4px","@switch-inner-margin-max":"22px","@slider-handle-size":"12px","@slider-handle-margin-top":"-4px","@input-padding-vertical-base":"round(\n max(\n (round(((@input-height-base - @font-size-base * @line-height-base) / 2) * 10) / 10) -\n @border-width-base,\n 2px\n )\n)","@input-padding-horizontal-lg":"11px","@page-header-padding":"16px","@page-header-padding-vertical":"8px","@page-header-heading-title":"16px","@page-header-heading-sub-title":"12px","@page-header-tabs-tab-font-size":"14px","@pagination-mini-options-size-changer-top":"1px","@pagination-item-size-sm":"22px","@cascader-dropdown-line-height":"@dropdown-line-height","@select-dropdown-height":"@height-base","@select-single-item-height-lg":"32px","@select-multiple-item-height":"@input-height-base - max(@input-padding-vertical-base, 4) * 2","@select-multiple-item-height-lg":"24px","@select-multiple-item-spacing-half":"3px","@tree-title-height":"20px","@transfer-item-padding-vertical":"3px","@transfer-list-search-icon-top":"8px","@transfer-header-height":"36px","@comment-actions-margin-bottom":"0px","@comment-actions-margin-top":"@margin-xs","@comment-content-detail-p-margin-bottom":"0px","@steps-icon-size":"24px","@steps-icon-custom-size":"20px","@steps-icon-custom-font-size":"20px","@steps-icon-custom-top":"2px","@steps-icon-margin":"2px 8px 2px 0","@steps-icon-font-size":"@font-size-base","@steps-dot-top":"4px","@steps-icon-top":"0px","@steps-small-icon-size":"20px","@steps-vertical-icon-width":"12px","@steps-vertical-tail-width":"12px","@steps-vertical-tail-width-sm":"10px","@collapse-header-padding-extra":"32px","@collapse-content-padding":"@padding-md @padding-lg","@list-item-meta-description-font-size":"@font-size-sm","@list-item-padding-sm":"4px 12px","@list-item-padding-lg":"12px 16px","@drawer-header-padding":"11px @padding-lg","@drawer-footer-padding-vertical":"@padding-sm","@drawer-footer-padding-horizontal":"@padding-sm","@drawer-header-close-size":"44px","@modal-header-padding-vertical":"11px","@modal-header-padding":"@modal-header-padding-vertical @modal-header-padding-horizontal","@modal-footer-padding-vertical":"@padding-sm","@modal-header-close-size":"@modal-header-title-line-height + 2 * @modal-header-padding-vertical","@modal-confirm-body-padding":"24px 24px 16px","@message-notice-content-padding":"8px 16px","@popover-min-height":"28px","@popover-padding-horizontal":"@default-padding-sm","@card-padding-base":"12px","@card-head-height":"36px","@card-head-font-size":"@card-head-font-size-sm","@card-head-padding":"8.5px","@card-padding-base-sm":"@card-padding-base","@card-head-height-sm":"30px","@card-head-padding-sm":"6px","@card-actions-li-margin":"4px 0","@card-head-tabs-margin-bottom":"-9px","@table-padding-vertical":"12px","@table-padding-horizontal":"8px","@table-padding-vertical-md":"8px","@table-padding-horizontal-md":"8px","@table-padding-vertical-sm":"4px","@table-padding-horizontal-sm":"4px","@table-selection-column-width":"32px","@statistic-content-font-size":"20px","@alert-with-description-no-icon-padding-vertical":"7px","@alert-with-description-padding-vertical":"11px","@alert-icon-top":"7px + @font-size-base * (@line-height-base / 2) - (@font-size-base / 2)","@alert-with-description-icon-size":"20px","@skeleton-paragraph-margin-top":"20px","@skeleton-paragraph-li-margin-top":"12px","@skeleton-paragraph-li-height":"14px","@skeleton-title-height":"14px","@skeleton-title-paragraph-margin-top":"20px","@descriptions-title-margin-bottom":"8px","@descriptions-default-padding":"12px @padding-lg","@descriptions-item-padding-bottom":"@padding-xs","@avatar-size-base":"28px","@avatar-size-lg":"32px","@avatar-size-sm":"22px","@avatar-font-size-base":"16px","@avatar-font-size-lg":"20px","@avatar-font-size-sm":"12px","@badge-height":"18px","@tag-line-height":"18px","@notification-padding-vertical":"12px","@notification-padding-horizontal":"16px","@result-title-font-size":"20px","@result-icon-font-size":"64px","@result-extra-margin":"24px 0 0 0","@anchor-link-top":"4px","@anchor-link-left":"16px","@anchor-link-padding":"@anchor-link-top 0 @anchor-link-top @anchor-link-left","@tabs-card-horizontal-padding":"4px @padding-md","@progress-circle-text-font-size":"0.833333em","@image-size-base":"48px","@image-font-size-base":"24px","@primary-color":"@blue-6","@layout-header-background":"#fff"} \ No newline at end of file +{"@line-height-base":"1.66667","@mode":"compact","@font-size-base":"12px","@font-size-lg":"@font-size-base + 2px","@default-padding-lg":"24px","@default-padding-md":"16px","@default-padding-sm":"12px","@default-padding-xs":"8px","@default-padding-xss":"4px","@padding-lg":"16px","@padding-md":"8px","@padding-sm":"8px","@padding-xs":"4px","@padding-xss":"0px","@control-padding-horizontal":"@padding-sm","@control-padding-horizontal-sm":"@default-padding-xs","@margin-lg":"16px","@margin-md":"8px","@margin-sm":"8px","@margin-xs":"4px","@margin-xss":"0px","@height-base":"28px","@height-lg":"32px","@height-sm":"22px","@btn-padding-horizontal-base":"@default-padding-sm - 1px","@btn-padding-horizontal-lg":"@btn-padding-horizontal-base","@btn-padding-horizontal-sm":"@default-padding-xs - 1px","@btn-square-only-icon-size-lg":"16px","@btn-square-only-icon-size":"14px","@btn-square-only-icon-size-sm":"12px","@breadcrumb-font-size":"@font-size-base","@breadcrumb-icon-font-size":"@font-size-base","@dropdown-line-height":"18px","@menu-item-padding":"0 12px","@menu-horizontal-line-height":"38px","@menu-inline-toplevel-item-height":"32px","@menu-item-height":"32px","@menu-item-vertical-margin":"0px","@menu-item-boundary-margin":"0px","@menu-icon-margin-right":"8px","@checkbox-size":"14px","@checkbox-group-item-margin-right":"6px","@picker-panel-cell-height":"22px","@picker-panel-cell-width":"32px","@picker-text-height":"32px","@picker-time-panel-cell-height":"24px","@picker-panel-without-time-cell-height":"48px","@form-item-margin-bottom":"16px","@form-vertical-label-padding":"0 0 4px","@rate-star-size":"16px","@radio-size":"14px","@radio-wrapper-margin-right":"6px","@switch-height":"20px","@switch-sm-height":"14px","@switch-min-width":"40px","@switch-sm-min-width":"24px","@switch-inner-margin-min":"4px","@switch-inner-margin-max":"22px","@slider-handle-size":"12px","@slider-handle-margin-top":"-4px","@input-padding-vertical-base":"round(\n max(\n (round(((@input-height-base - @font-size-base * @line-height-base) / 2) * 10) / 10) -\n @border-width-base,\n 2px\n )\n)","@input-padding-horizontal-lg":"11px","@page-header-padding":"16px","@page-header-padding-vertical":"8px","@page-header-heading-title":"16px","@page-header-heading-sub-title":"12px","@page-header-tabs-tab-font-size":"14px","@pagination-mini-options-size-changer-top":"1px","@pagination-item-size-sm":"22px","@cascader-dropdown-line-height":"@dropdown-line-height","@select-dropdown-height":"@height-base","@select-single-item-height-lg":"32px","@select-multiple-item-height":"@input-height-base - max(@input-padding-vertical-base, 4) * 2","@select-multiple-item-height-lg":"24px","@select-multiple-item-spacing-half":"3px","@tree-title-height":"20px","@transfer-item-padding-vertical":"3px","@transfer-list-search-icon-top":"8px","@transfer-header-height":"36px","@comment-actions-margin-bottom":"0px","@comment-actions-margin-top":"@margin-xs","@comment-content-detail-p-margin-bottom":"0px","@steps-icon-size":"24px","@steps-icon-custom-size":"20px","@steps-icon-custom-font-size":"20px","@steps-icon-custom-top":"2px","@steps-icon-margin":"2px 8px 2px 0","@steps-icon-font-size":"@font-size-base","@steps-dot-top":"4px","@steps-icon-top":"0px","@steps-small-icon-size":"20px","@steps-vertical-icon-width":"12px","@steps-vertical-tail-width":"12px","@steps-vertical-tail-width-sm":"10px","@collapse-header-padding-extra":"32px","@collapse-content-padding":"@padding-md @padding-lg","@list-item-meta-description-font-size":"@font-size-sm","@list-item-padding-sm":"4px 12px","@list-item-padding-lg":"12px 16px","@drawer-header-padding":"11px @padding-lg","@drawer-footer-padding-vertical":"@padding-sm","@drawer-footer-padding-horizontal":"@padding-sm","@drawer-header-close-size":"44px","@modal-header-padding":"11px @modal-header-padding-horizontal","@modal-footer-padding-vertical":"@padding-sm","@modal-header-close-size":"44px","@modal-confirm-body-padding":"24px 24px 16px","@message-notice-content-padding":"8px 16px","@popover-min-height":"28px","@popover-padding-horizontal":"@default-padding-sm","@card-padding-base":"12px","@card-head-height":"36px","@card-head-font-size":"@card-head-font-size-sm","@card-head-padding":"8.5px","@card-padding-base-sm":"@card-padding-base","@card-head-height-sm":"30px","@card-head-padding-sm":"6px","@card-actions-li-margin":"4px 0","@card-head-tabs-margin-bottom":"-9px","@table-padding-vertical":"12px","@table-padding-horizontal":"8px","@table-padding-vertical-md":"8px","@table-padding-horizontal-md":"8px","@table-padding-vertical-sm":"4px","@table-padding-horizontal-sm":"4px","@table-selection-column-width":"32px","@statistic-content-font-size":"20px","@alert-with-description-no-icon-padding-vertical":"7px","@alert-with-description-padding-vertical":"11px","@alert-icon-top":"7px + @font-size-base * (@line-height-base / 2) - (@font-size-base / 2)","@alert-with-description-icon-size":"20px","@skeleton-paragraph-margin-top":"20px","@skeleton-paragraph-li-margin-top":"12px","@skeleton-paragraph-li-height":"14px","@skeleton-title-height":"14px","@skeleton-title-paragraph-margin-top":"20px","@descriptions-title-margin-bottom":"8px","@descriptions-default-padding":"12px @padding-lg","@descriptions-item-padding-bottom":"@padding-xs","@avatar-size-base":"28px","@avatar-size-lg":"32px","@avatar-size-sm":"22px","@avatar-font-size-base":"16px","@avatar-font-size-lg":"20px","@avatar-font-size-sm":"12px","@badge-height":"18px","@tag-line-height":"18px","@notification-padding-vertical":"12px","@notification-padding-horizontal":"16px","@result-title-font-size":"20px","@result-icon-font-size":"64px","@result-extra-margin":"24px 0 0 0","@anchor-link-top":"4px","@anchor-link-left":"16px","@anchor-link-padding":"@anchor-link-top 0 @anchor-link-top @anchor-link-left","@tabs-card-horizontal-padding":"4px @padding-md","@progress-circle-text-font-size":"0.833333em","@image-size-base":"48px","@image-font-size-base":"24px","@primary-color":"@blue-6","@layout-header-background":"#fff"} \ No newline at end of file diff --git a/web/client/src/utils/webapi.js b/web/client/src/utils/webapi.js index 96b86ae0..7e36e0fd 100644 --- a/web/client/src/utils/webapi.js +++ b/web/client/src/utils/webapi.js @@ -38,15 +38,18 @@ export const ApiTable = { getReportRectifyDetail: 'report/rectify/detail', compileReportRectifyDetail: 'report/rectify/detail', - //报表下载 - getReportList: 'report/list', - // 数据 - getFundamental: 'daily/report/data/statistic', - getsortord: "daily/report/area/statistic?startDate={zuo}&endDate={day}", - //填报信息 - getReportStatistic: 'report/management/statistic', - reportDownLoad: '_report/http' + //运政管理 + getOperaTional:'vehicle', + getSpecificVehicle:'vehicle/specific', + getHouseholds:'vehicle/business', + //道路管理 + getRoadway:'road', +//桥梁管理 +getBridge:'bridge', +//工程数据 +getProject:'project' }; + export const RouteTable = { apiRoot: '/api/root', fileUpload: '/_upload/new', diff --git a/web/log/development.txt b/web/log/development.txt index 606a4d04..55947397 100644 --- a/web/log/development.txt +++ b/web/log/development.txt @@ -3415,5 +3415,70 @@ 2022-07-18 17:40:02.984 - info: [Router] Inject api: attachment/index 2022-07-19 09:38:20.086 - debug: [FS-LOGGER] Init. 2022-07-19 09:38:20.998 - info: [Router] Inject api: attachment/index +<<<<<<< HEAD +2022-07-21 15:22:04.942 - debug: [FS-LOGGER] Init. +2022-07-21 15:22:05.542 - info: [Router] Inject api: attachment/index +2022-07-21 17:03:00.480 - debug: [FS-LOGGER] Init. +2022-07-21 17:03:01.177 - info: [Router] Inject api: attachment/index +2022-07-21 18:12:39.625 - error: [FS-ERRHD] +{ + message: 'Error: connect ETIMEDOUT 10.8.30.157:8439', + name: 'RequestError', + cause: { + errno: -4039, + code: 'ETIMEDOUT', + syscall: 'connect', + address: '10.8.30.157', + port: 8439 + }, + error: { '$ref': '$["cause"]' }, + options: { + jar: false, + url: 'http://10.8.30.157:8439/enterprises/undefined/members?token=215ed57a-8244-4523-b2ed-5a6b12b51711', + headers: { + host: '10.8.30.157:8439', + connection: 'keep-alive', + 'sec-ch-ua': '" Not;A Brand";v="99", "Microsoft Edge";v="103", "Chromium";v="103"', + expires: '-1', + 'cache-control': 'no-cache,no-store,must-revalidate,max-age=-1,private', + 'x-requested-with': 'XMLHttpRequest', + 'sec-ch-ua-mobile': '?0', + 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/103.0.5060.114 Safari/537.36 Edg/103.0.1264.62', + 'sec-ch-ua-platform': '"Windows"', + accept: '*/*', + 'sec-fetch-site': 'same-origin', + 'sec-fetch-mode': 'cors', + 'sec-fetch-dest': 'empty', + referer: 'http://localhost:5000/quanju', + 'accept-encoding': 'gzip, deflate, br', + 'accept-language': 'zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6' + }, + encoding: null, + followRedirect: true, + method: 'GET', + body: '[object Object]', + simple: false, + resolveWithFullResponse: true, + callback: [Function: RP$callback], + transform: undefined, + transform2xxOnly: false + }, + response: undefined, + stack: 'RequestError: Error: connect ETIMEDOUT 10.8.30.157:8439\n' + + ' at new RequestError (F:\\4hao\\Highways4Good\\web\\node_modules\\request-promise-core\\lib\\errors.js:14:15)\n' + + ' at Request.plumbing.callback (F:\\4hao\\Highways4Good\\web\\node_modules\\request-promise-core\\lib\\plumbing.js:87:29)\n' + + ' at Request.RP$callback [as _callback] (F:\\4hao\\Highways4Good\\web\\node_modules\\request-promise-core\\lib\\plumbing.js:46:31)\n' + + ' at self.callback (F:\\4hao\\Highways4Good\\web\\node_modules\\request\\request.js:185:22)\n' + + ' at Request.emit (events.js:315:20)\n' + + ' at Request.onRequestError (F:\\4hao\\Highways4Good\\web\\node_modules\\request\\request.js:877:8)\n' + + ' at ClientRequest.emit (events.js:315:20)\n' + + ' at Socket.socketErrorListener (_http_client.js:461:9)\n' + + ' at Socket.emit (events.js:315:20)\n' + + ' at emitErrorNT (internal/streams/destroy.js:96:8)\n' + + ' at emitErrorCloseNT (internal/streams/destroy.js:68:3)\n' + + ' at processTicksAndRejections (internal/process/task_queues.js:84:21)' +} +======= 2022-07-20 19:15:55.678 - debug: [FS-LOGGER] Init. 2022-07-20 19:15:56.118 - info: [Router] Inject api: attachment/index +>>>>>>> 65cf2722eec21e1d07ce958f4298eec7ae620c85