diff --git a/api/app/lib/controllers/data/vehicle.js b/api/app/lib/controllers/data/vehicle.js
index 59aa5408..8dd38fe0 100644
--- a/api/app/lib/controllers/data/vehicle.js
+++ b/api/app/lib/controllers/data/vehicle.js
@@ -7,8 +7,8 @@ async function get(ctx) {
const { type } = ctx.request.body;
const { name } = ctx.query;
const sequelize = ctx.fs.dc.orm
- const sqlStr = `select sum(p.road_marking) 标线,sum(p.roadside_ditch) 边沟,
- sum(p.guardrail) 护栏, sum(p.roadside_trees) 行道树,sum(p.wrong_lane) 错车道
+ const sqlStr = `select sum(p.road_marking) "标线(米)",sum(p.roadside_ditch) "边沟(米)",
+ sum(p.guardrail) "护栏(米)", sum(p.roadside_trees) "行道树(棵)",sum(p.wrong_lane) "错车道(个)"
from (
select t.*,row_number() over (partition by t.luduan order by t.time desc ) rn from (
select code_road||'-'||road_section_start||'-'||road_section_end luduan,
diff --git a/jenkinsfilenew_node b/jenkinsfilenew_node
new file mode 100644
index 00000000..317b5a5a
--- /dev/null
+++ b/jenkinsfilenew_node
@@ -0,0 +1,21 @@
+podTemplate {
+ node('pod-templ-jenkins-slave-common') {
+
+ env.IMAGE_NAME = "${IOT_IMAGES_REGISTRY}/${SMARTCITY}/${JOB_NAME}"
+ env.IMAGE_NAME_SHORT = "${SMARTCITY}/${JOB_NAME}"
+ env.CODE_ADDR = "${GIT_ADDRESS}/free-sun/Highways4Good.git"
+
+ stage('Run shell') {
+ git branch: 'dev', credentialsId: 'gitea-builder', url: "${CODE_ADDR}"
+
+ container('image-builder') {
+ sh'''
+ /kaniko/executor --context=${BUILD_WORKSPACE} --dockerfile=./scripts/1.3.1/data/1_insert_report_data/Dockerfilenew --destination=${IMAGE_NAME}:${IMAGE_VERSION} --cache=false --cleanup
+ '''
+ }
+
+ buildName "${IMAGE_NAME_SHORT}:${IMAGE_VERSION}"
+ buildDescription "${IMAGE_NAME}:${IMAGE_VERSION}"
+ }
+ }
+}
\ No newline at end of file
diff --git a/scripts/1.3.1/data/1_insert_report_data/Dockerfilenew b/scripts/1.3.1/data/1_insert_report_data/Dockerfilenew
new file mode 100644
index 00000000..dba16607
--- /dev/null
+++ b/scripts/1.3.1/data/1_insert_report_data/Dockerfilenew
@@ -0,0 +1,7 @@
+FROM repository.anxinyun.cn/base-images/nodejs12:20.10.12.2
+COPY ./scripts/1.3.1/data/1_insert_report_data /var/app
+WORKDIR /var/app
+RUN npm cache clean -f
+RUN rm -rf package-lock.json
+RUN npm install --registry https://nexus.ngaiot.com/repository/fs-npm/
+CMD ["node", "index.js"]
\ No newline at end of file
diff --git a/scripts/1.3.1/data/1_insert_report_data/index.js b/scripts/1.3.1/data/1_insert_report_data/index.js
index 6f5303d4..af8c191a 100644
--- a/scripts/1.3.1/data/1_insert_report_data/index.js
+++ b/scripts/1.3.1/data/1_insert_report_data/index.js
@@ -6,13 +6,13 @@ try {
// 测试环境
const pool = new Pool({
- user: 'postgres',
- host: '10.8.30.32',
- database: 'highways4good',
- password: '123',
+ user: 'FashionAdmin',
+ host: '10.8.40.223',
+ database: 'sihaotest',
+ password: 'Fas123_',
port: 5432,
})
- const userId = 5
+ const userId = 21
// 商用环境
// const pool = new Pool({
diff --git a/weapp/src/packages/patrol/index.jsx b/weapp/src/packages/patrol/index.jsx
index ab002782..088de738 100644
--- a/weapp/src/packages/patrol/index.jsx
+++ b/weapp/src/packages/patrol/index.jsx
@@ -1444,12 +1444,14 @@ const Index = () => {
isSuperAdmin && (wait === 'wait' || kind === 'handle') &&
{
handleState === '待处理' && <>
- {
- setIsAppoint(e.detail.value === '指派' ? true : false)
- }}>
- 指派
- 不处理
-
+
+ {
+ setIsAppoint(e.detail.value === '指派' ? true : false)
+ }}>
+ 指派
+ 不处理
+
+
{
isAppoint && <>
@@ -1463,13 +1465,15 @@ const Index = () => {
-
}
{handle != 'handle' && handleState != '已处理' ? 提交 : ''}
diff --git a/weapp/src/packages/patrol/index.scss b/weapp/src/packages/patrol/index.scss
index be62fcb9..5281f66a 100644
--- a/weapp/src/packages/patrol/index.scss
+++ b/weapp/src/packages/patrol/index.scss
@@ -283,14 +283,28 @@ page {
}
.appoint {
- margin-top: 10px;
- padding: 10px 20px;
- background-color: #fff;
+ // margin-top: 10px;
+ // padding: 10px 20px;
+ // background-color: #fff;
+
+ .appoint-radio {
+ height: 96px;
+ background-color: #fff;
+ margin-top: 5px;
+ padding: 0 20px;
+ display: flex;
+ justify-content: start;
+ align-items: center;
+ }
.picker {
- margin: 10px 0;
+ height: 96px;
+ background-color: #fff;
+ margin-top: 5px;
+ padding: 0 20px;
display: flex;
- justify-content: flex-start;
+ justify-content: space-between;
+ align-items: center;
.arrow {
width: 24px;
@@ -298,5 +312,22 @@ page {
margin: 0 10px;
}
}
+
+ .handle-advice {
+ background-color: #fff;
+ margin-top: 5px;
+ padding: 10px 20px;
+ }
+ }
+
+ .general-cell {
+ min-height: 96px;
+ background-color: #fff;
+ margin-top: 5px;
+ padding: 0px 20px;
+ display: flex;
+ justify-content: start;
+ align-items: center;
+ flex-wrap: wrap;
}
}
\ No newline at end of file
diff --git a/web/client/src/sections/fillion/actions/infor.js b/web/client/src/sections/fillion/actions/infor.js
index f35bd2a5..a245f755 100644
--- a/web/client/src/sections/fillion/actions/infor.js
+++ b/web/client/src/sections/fillion/actions/infor.js
@@ -108,8 +108,7 @@ export function putRoadway(query) {
data: query,
actionType: 'PUT_ROADWAY',
url: ApiTable.putRoadway,
- msg: { option: '编辑道路信息' },
-
+ msg: { option: query?.roadId?'编辑':'新增' + '道路信息' },
});
}
export function getBridge(query) {
diff --git a/web/client/src/sections/fillion/components/highwaysTable.js b/web/client/src/sections/fillion/components/highwaysTable.js
index 248e503c..af03ffd0 100644
--- a/web/client/src/sections/fillion/components/highwaysTable.js
+++ b/web/client/src/sections/fillion/components/highwaysTable.js
@@ -270,6 +270,7 @@ const TransporTationTable = (props) => {
multipleLine: true,
menu: {
+ type: 'tab',
activeKey,
onChange: (key) => setActiveKey(key),
items: [
@@ -298,7 +299,7 @@ const TransporTationTable = (props) => {
options={false}
ref={c => { finishedProductTable = c; }}
style={{ width: "100% ", overflow: "auto", height: '760px' }}
- rowKey='id'
+ //rowKey='id'
onReset={(v) => {
setSitename('')
}}
@@ -317,7 +318,12 @@ const TransporTationTable = (props) => {
}
setRowSelected([]);
const res = await dispatch(getHighways(query));
- let rslt = res.payload.data?.vehicleRes?.filter(item => item.name !== '路牌名')
+ let rslt = res.payload.data?.vehicleRes?.map(item => {
+ return {
+ ...item,
+ name: item.name + "(个)"
+ }
+ })
const additionalProperties = Object.entries(res.payload.data?.conserveData[0]).map(([key, value]) => ({
id: null,
name: key,
diff --git a/web/client/src/sections/fillion/components/luzhengmodel.js b/web/client/src/sections/fillion/components/luzhengmodel.js
index 292e87a2..d2410739 100644
--- a/web/client/src/sections/fillion/components/luzhengmodel.js
+++ b/web/client/src/sections/fillion/components/luzhengmodel.js
@@ -4,15 +4,15 @@ import { Form, Input, Select, DatePicker, InputNumber, Button, Modal } from 'ant
import { unitList } from '../containers/assess'
import { getAssess, delAssess, editAssess } from '../actions/assess';
import moment from 'moment';
-import { getRoadadministration,addRoadadministration,delRoadadministration,modifyRoadadministration } from '../actions/luzheng';
-// import Uploads from "../../../../components/Upload/index"
-// import Uploads from '../../../components/Upload/index'
+import { getRoadadministration, addRoadadministration, delRoadadministration, modifyRoadadministration } from '../actions/luzheng';
+// import Uploads from "../../../../components/Upload/index"
+// import Uploads from '../../../components/Upload/index'
import Uploads from './uploads'
const { Option } = Select;
const LuzhengModel = ({ editData, check, visible, onCancel, dispatch }) => {
const [form] = Form.useForm();
- console.log(editData,'editData')
+ // console.log(editData,'editData')
return (
{
cancelButtonProps={{
disabled: check,
}}
+ footer={!check ? [
+ ,
+
+ ] : null}
onOk={() => {
if (check) {
return onCancel()
}
form.validateFields().then(values => {
- if(editData){
- dispatch(modifyRoadadministration(editData?.id,{
+ if (editData) {
+ dispatch(modifyRoadadministration(editData?.id, {
...values
})).then(res => {
if (res.success) {
onCancel()
}
})
- }else{
+ } else {
dispatch(addRoadadministration({
...values,
})).then(res => {
if (res.success) {
onCancel()
}
- })
+ })
}
-
+
})
}}
onCancel={() => {
@@ -65,43 +97,43 @@ const LuzhengModel = ({ editData, check, visible, onCancel, dispatch }) => {
}}
>
- {/* */}
-
+ {/* */}
+
-
-
+
+
-
-
+
+
-
+
);
};
-function mapStateToProps (state) {
+function mapStateToProps(state) {
const { auth, assess } = state
return {
user: auth.user,
assess: assess.data || []
}
}
-export default connect(mapStateToProps)(LuzhengModel);
+export default connect(mapStateToProps)(LuzhengModel);
\ No newline at end of file
diff --git a/web/client/src/sections/fillion/containers/luzheng.js b/web/client/src/sections/fillion/containers/luzheng.js
index d09f3825..b2ccd93a 100644
--- a/web/client/src/sections/fillion/containers/luzheng.js
+++ b/web/client/src/sections/fillion/containers/luzheng.js
@@ -1,10 +1,10 @@
import React, { useState, useEffect } from 'react';
import { connect } from 'react-redux';
import { getAssess, delAssess, editAssess } from '../actions/assess';
-import { getRoadadministration,addRoadadministration,delRoadadministration,modifyRoadadministration } from '../actions/luzheng';
+import { getRoadadministration, addRoadadministration, delRoadadministration, modifyRoadadministration } from '../actions/luzheng';
import ProTable from '@ant-design/pro-table';
import AssessModal from '../components/luzhengmodel';
-import { Form, Space, DatePicker, Button, Select, Popconfirm ,Image} from 'antd'
+import { Form, Space, DatePicker, Button, Select, Popconfirm, Image, Tooltip } from 'antd'
import moment from 'moment';
import { values } from 'lodash';
@@ -35,13 +35,13 @@ function Assess(props) {
const [query, setQuery] = useState({ page: 1, pageSize: 10 })
const [loading, setLoading] = useState(false);
const [isCheck, setIsCheck] = useState(false)
- const [datasource,setdatasource] = useState([])
+ const [datasource, setdatasource] = useState([])
const [dateRange, setDateRange] = useState(['1970-1-1', '2099-12-31']);
const { RangePicker } = DatePicker
- const [total,settotal]= useState(0)
+ const [total, settotal] = useState(0)
const [editAble, setEditAble] = useState(user?.username !== 'SuperAdmin' && user?.userResources?.find(i => i.resourceId === 'ASSESSMANAGE')?.isshow === "true" ? true : '')
useEffect(() => {
-
+
return () => { };
}, []);
@@ -51,9 +51,9 @@ function Assess(props) {
const getData = () => {
setLoading(true)
- console.log(query,'query')
- dispatch(getRoadadministration({...query})).then(res => {
- if(res?.success){
+ console.log(query, 'query')
+ dispatch(getRoadadministration({ ...query })).then(res => {
+ if (res?.success) {
setdatasource(res?.payload?.data?.rows)
settotal(res?.payload?.data?.count)
setLoading(false)
@@ -65,14 +65,16 @@ function Assess(props) {
- { setDateRange(dateString) }} style={{ marginRight: '50px' }} />
+ { setDateRange(dateString) }} style={{ marginRight: '50px' }} />
@@ -90,40 +92,50 @@ function Assess(props) {
title: '执法日期',
dataIndex: 'enforcementdate',
key: 'enforcementdate',
- render:(t,r)=>{
- return r?.enforcementdate?moment(r?.enforcementdate).format('YYYY-MM-DD'):'--'
+ render: (t, r) => {
+ return r?.enforcementdate ? moment(r?.enforcementdate).format('YYYY-MM-DD') : '--'
}
},
{
title: '执法道路',
dataIndex: 'roadname',
- key: 'roadname'
+ key: 'roadname',
+ render: (t, r) => {
+ return
+ {r?.roadname && r?.roadname?.length > 20 ? r?.roadname?.substr(0, 20) + '...' : r?.roadname}
+
+ }
},
{
title: '执法成果',
dataIndex: 'enforcementreslt',
key: 'enforcementreslt',
+ render: (t, r) => {
+ return
+ {r?.enforcementreslt && r?.enforcementreslt?.length > 20 ? r?.enforcementreslt?.substr(0, 20) + '...' : r?.enforcementreslt}
+
+ }
},
{
title: '执法图片',
dataIndex: 'picfile',
key: 'picfile',
- render:(t,r)=>{
- if(r?.picfile && r?.picfile?.length!==0){
- return r?.picfile?.map(i=>{
- return
-
-
- })
- }else{
- return '--'
- }
-
-
-
-
-
-
+ render: (t, r) => {
+ if (r?.picfile && r?.picfile?.length !== 0) {
+ return r?.picfile?.map(i => {
+ return
+
+
+ })
+ } else {
+ return '--'
+ }
+
+
+
+
+
+
}
},
{
@@ -139,8 +151,8 @@ function Assess(props) {
+
+ }} disabled={editAble}>编辑
{
@@ -148,8 +160,8 @@ function Assess(props) {
dispatch(delRoadadministration(record.id)).then(res => {
setLoading(false)
if (res.success) {
- setQuery({...query, page: 1, pageSize: 10, limit: 10})
- // getData(page)
+ setQuery({ ...query, page: 1, pageSize: 10, limit: 10 })
+ // getData(page)
}
})
}}
@@ -167,7 +179,7 @@ function Assess(props) {
defaultPageSize: 10,
showSizeChanger: false,
onChange: (page, pageSize) => {
- console.log(page,'page')
+ console.log(page, 'page')
setQuery({
...query,
page, limit: pageSize
@@ -179,7 +191,7 @@ function Assess(props) {
search={false}
/>
{
- assessModalVisible ? {
+ assessModalVisible ? {
getData()
setIsCheck(false)
setEditData(null)
diff --git a/web/client/src/sections/fillion/containers/maintenanceSpotCheck.js b/web/client/src/sections/fillion/containers/maintenanceSpotCheck.js
index 01390aec..c14e948a 100644
--- a/web/client/src/sections/fillion/containers/maintenanceSpotCheck.js
+++ b/web/client/src/sections/fillion/containers/maintenanceSpotCheck.js
@@ -479,7 +479,7 @@ const MaintenanceSpotCheck = (props) => {
-
+
diff --git a/web/client/src/sections/quanju/containers/footer/conserve/left/left-center.js b/web/client/src/sections/quanju/containers/footer/conserve/left/left-center.js
index d62139a6..c03ce98f 100644
--- a/web/client/src/sections/quanju/containers/footer/conserve/left/left-center.js
+++ b/web/client/src/sections/quanju/containers/footer/conserve/left/left-center.js
@@ -114,8 +114,8 @@ const LeftCenter = (props) => {
grid: {
left: '3%',
right: '12%',
- bottom: '21%',
- top: '4%',
+ bottom: '28%',
+ top: '8%',
containLabel: true
},
}}
diff --git a/web/client/src/sections/quanju/containers/footer/conserve/right/right-center.js b/web/client/src/sections/quanju/containers/footer/conserve/right/right-center.js
index a4e19c6c..52dc2f9d 100644
--- a/web/client/src/sections/quanju/containers/footer/conserve/right/right-center.js
+++ b/web/client/src/sections/quanju/containers/footer/conserve/right/right-center.js
@@ -115,8 +115,8 @@ const RightCenter = (props) => {
grid: {
left: '3%',
right: '4%',
- bottom: '21%',
- top: '4%',
+ bottom: '28%',
+ top: '8%',
containLabel: true
},
}}
diff --git a/web/client/src/sections/quanju/containers/footer/conserve/right/right-top.js b/web/client/src/sections/quanju/containers/footer/conserve/right/right-top.js
index 50beed0d..109a8560 100644
--- a/web/client/src/sections/quanju/containers/footer/conserve/right/right-top.js
+++ b/web/client/src/sections/quanju/containers/footer/conserve/right/right-top.js
@@ -74,8 +74,16 @@ const RightTop = (props) => {
}}>
{beijing == index ? : ""}
{beijing == index ? : ""}
- {item?.user?.name || '--'}
- {item.road ? item.road : "--"}
+ {item?.user?.name || '--'}
+ {item.road ? item.road : "--"}
{
item.time ?
@@ -113,7 +121,7 @@ const RightTop = (props) => {
)
})
}
-
+
)
}
diff --git a/web/client/src/sections/quanju/containers/footer/leadership/centerleft/qiqoliang.js b/web/client/src/sections/quanju/containers/footer/leadership/centerleft/qiqoliang.js
index 39575b3f..ef151f90 100644
--- a/web/client/src/sections/quanju/containers/footer/leadership/centerleft/qiqoliang.js
+++ b/web/client/src/sections/quanju/containers/footer/leadership/centerleft/qiqoliang.js
@@ -94,7 +94,9 @@ const Right = (props) => {
{/* */}
-
中小桥梁{isNaN(roads?.["小桥"] + roads?.["中桥"]) ? "" : roads?.["小桥"] + roads?.["中桥"]}座
+
中小桥梁159座
+
+ {/*
中小桥梁{isNaN(roads?.["小桥"] + roads?.["中桥"]) ? "" : roads?.["小桥"] + roads?.["中桥"]}座
*/}
占比{isNaN((((roads?.["小桥"] + roads?.["中桥"]) / (roads?.["小桥"] + roads?.["中桥"] + roads?.["大桥"])) * 100).toFixed(2)) ? "" : (((roads?.["小桥"] + roads?.["中桥"]) / (roads?.["小桥"] + roads?.["中桥"] + roads?.["大桥"])) * 100).toFixed(2)}%
diff --git a/web/client/src/sections/quanju/containers/public/olMap.js b/web/client/src/sections/quanju/containers/public/olMap.js
index 4d50a3be..939d33cc 100644
--- a/web/client/src/sections/quanju/containers/public/olMap.js
+++ b/web/client/src/sections/quanju/containers/public/olMap.js
@@ -43,6 +43,16 @@ const OlMap = (props) => {
olMap.closeOverlay('clickOpen')
olMap.closeOverlay('pointClickOpen')
olMap.removeGeometryLayer('geometry0')
+ if (tab != 'conserve') {
+ patrolList.forEach((d, index) => {
+ olMap.removeGeometryLayer('geometry_patrol_' + index)
+ })
+ }
+ if (tab != 'build') {
+ roadProjectList.forEach((d, index) => {
+ olMap.removeGeometryLayer('geometry_road_' + index)
+ })
+ }
}
}, [tab])
@@ -282,10 +292,6 @@ const OlMap = (props) => {
layerName: 'geometry_patrol_' + index
});
});
- } else if (tab != 'conserve' && olMap) {
- patrolList.forEach((d, index) => {
- olMap.removeGeometryLayer('geometry_patrol_' + index)
- })
}
}, [patrolList, olMap, tab])