diff --git a/api/app/lib/controllers/data/overspeed.js b/api/app/lib/controllers/data/overspeed.js
index b123b4ba..0da8d491 100644
--- a/api/app/lib/controllers/data/overspeed.js
+++ b/api/app/lib/controllers/data/overspeed.js
@@ -4,12 +4,12 @@ async function overspeedGet (ctx) {
     try {
         const models = ctx.fs.dc.models;
         const { limit, page, nameOfInspectionPoint, licensePlate, numberOfAxles, overrunRateUpper, overrunRateFloor, testTime } = ctx.query
-
+        const sequelize = ctx.fs.dc.ORM;
         let findOption = {
             where: {
 
             },
-            order: [['id', 'DESC']]
+            order: [['id', 'DESC']],
         }
         if (limit) {
             findOption.limit = limit
@@ -17,16 +17,19 @@ async function overspeedGet (ctx) {
         if (page && limit) {
             findOption.offset = page * limit
         }
-        if (nameOfInspectionPoint) {
-            findOption.where.nameOfInspectionPoint = {
-                '$like': `%${nameOfInspectionPoint}%`
+
+        if (nameOfInspectionPoint || licensePlate) {
+            findOption.where['$or'] = {}
+            if (nameOfInspectionPoint) {
+                findOption.where['$or'].
+                    nameOfInspectionPoint = { $like: `%${nameOfInspectionPoint}%` }
             }
-        }
-        if (licensePlate) {
-            findOption.where.licensePlate = {
-                '$like': `%${licensePlate}%`
+            if (licensePlate) {
+                findOption.where['$or'].
+                    licensePlate = { $like: `%${licensePlate}%` }
             }
         }
+
         if (numberOfAxles) {
             findOption.where.numberOfAxles = numberOfAxles
         }
@@ -38,7 +41,7 @@ async function overspeedGet (ctx) {
         if (overrunRateFloor) {
             findOption.where.overrunRate = {
                 $gte: overrunRateFloor
-            }
+            } 
         }
         if (testTime) {
             findOption.where.testTime = testTime
diff --git a/api/app/lib/controllers/data/road.js b/api/app/lib/controllers/data/road.js
index 71ece58e..842c92b6 100644
--- a/api/app/lib/controllers/data/road.js
+++ b/api/app/lib/controllers/data/road.js
@@ -92,9 +92,8 @@ async function getRoadSection (ctx) {
         if (road || sectionStart || sectionEnd) {
             findOption.where['$or'] = {}
             if (road) {
-                findOption.where['$or'].push = {
-                    routeName: { $like: `%${road}%` }
-                }
+                findOption.where['$or'].
+                    routeName = { $like: `%${road}%` }
             }
             if (sectionStart) {
                 findOption.where['$or'].
diff --git a/api/app/lib/controllers/data/vehicle.js b/api/app/lib/controllers/data/vehicle.js
index 1cae9b49..db6c8e8e 100644
--- a/api/app/lib/controllers/data/vehicle.js
+++ b/api/app/lib/controllers/data/vehicle.js
@@ -213,7 +213,7 @@ async function businessDel (ctx) {
         const models = ctx.fs.dc.models;
         const { businessId } = ctx.params;
 
-        await models.Vehicle.MunicipalBusiness({
+        await models.MunicipalBusiness.destroy({
             where: {
                 id: businessId
             }
diff --git a/api/app/lib/controllers/overview/operation.js b/api/app/lib/controllers/overview/operation.js
index 975760d3..d21eed83 100644
--- a/api/app/lib/controllers/overview/operation.js
+++ b/api/app/lib/controllers/overview/operation.js
@@ -10,25 +10,51 @@ async function busCarLevelList (ctx) {
             attributes: ['id', 'company', 'fleet', 'vehicleLicensePlateNumber', 'line'],
         })
         for (let c of busCarRes) {
-            const { company, fleet, line } = c
+            const { company, fleet, vehicleLicensePlateNumber, line } = c
             const corCompany = data.find(d => d.name === company)
             if (!corCompany) {
                 data.push({
-                    name: company,
+                    name: company || '--',
                     child: [{
-                        name: fleet,
-                        child: [{ ...c.dataValues }]
+                        name: fleet || '--',
+                        child: [{
+                            name: line || '--',
+                            child: [{
+                                id: c.id,
+                                name: vehicleLicensePlateNumber,
+                            }]
+                        }]
                     }]
                 })
             } else {
                 const corFleet = corCompany.child.find(d => d.name === fleet)
                 if (!corFleet) {
                     corCompany.child.push({
-                        name: fleet,
-                        child: [{ ...c.dataValues }]
+                        name: fleet || '--',
+                        child: [{
+                            name: line || '--',
+                            child: [{
+                                id: c.id,
+                                name: vehicleLicensePlateNumber || '--',
+                            }]
+                        }]
                     })
                 } else {
-                    corFleet.child.push({ ...c.dataValues })
+                    const corLine = corFleet.child.find(d => d.name === line)
+                    if (!corLine) {
+                        corFleet.child.push({
+                            name: line || '--',
+                            child: [{
+                                id: c.id,
+                                name: vehicleLicensePlateNumber || '--',
+                            }]
+                        })
+                    } else {
+                        corLine.child.push({
+                            id: c.id,
+                            name: vehicleLicensePlateNumber || '--',
+                        })
+                    }
                 }
             }
         }
diff --git a/api/app/lib/models/publicity.js b/api/app/lib/models/publicity.js
index 62a1c77a..a9ceef05 100644
--- a/api/app/lib/models/publicity.js
+++ b/api/app/lib/models/publicity.js
@@ -28,7 +28,7 @@ module.exports = dc => {
         },
         video: {
             index: 3,
-            type: DataTypes.ARRAY(DataTypes.INTEGER),
+            type: DataTypes.ARRAY(DataTypes.STRING),
             allowNull: true,
             defaultValue: null,
             comment: null,
diff --git a/web/client/index.ejs b/web/client/index.ejs
index a91dbdd7..0d79375c 100644
--- a/web/client/index.ejs
+++ b/web/client/index.ejs
@@ -15,6 +15,7 @@
       }
   
   
+  
   
 
   
diff --git a/web/client/src/sections/fillion/components/bridgeTable.js b/web/client/src/sections/fillion/components/bridgeTable.js
index d8101bda..2f46b175 100644
--- a/web/client/src/sections/fillion/components/bridgeTable.js
+++ b/web/client/src/sections/fillion/components/bridgeTable.js
@@ -4,7 +4,7 @@ import { Spin, Button, Popconfirm, Badge } from 'antd';
 import ProTable from '@ant-design/pro-table';
 import './protable.less'
 import moment from 'moment';
-import { getBridge, getProject,delBridge,delProject } from "../actions/infor"
+import { getBridge, getProject, delBridge, delProject } from "../actions/infor"
 import UserModal from './infor/details';
 import ProjectModal from './project/project';
 
@@ -26,7 +26,23 @@ const BrideTable = (props) => {
     const [delet, setDelet] = useState()
 
     const ref = useRef()
-    useEffect(() => { ref.current.reload() }, [whichofits,delet])
+    useEffect(() => { ref.current.reload() }, [whichofits, delet])
+    const deldata = (id) => { // 桥梁
+        const query = {
+            bridgeId: id
+        }
+        dispatch(delBridge(query)).then((res) => {
+            setDelet(res)
+        })
+    }
+    const deldatas = (id) => { // 工程
+        const query = {
+            projectId: id
+        }
+        dispatch(delProject(query)).then((res) => {
+            setDelet(res)
+        })
+    }
     const columns = {
         tab1: [
             {
@@ -1493,16 +1509,10 @@ const BrideTable = (props) => {
                             setTypecard('111')
                             setRecortd(record)
                         }}
-                    >编辑
+                    >编辑
+                         { deldata(record.id) }}>
+                            
+                        
 
                 }
             },
@@ -1683,16 +1693,9 @@ const BrideTable = (props) => {
                             setTypecard('111')
                             setRecortd(record)
                         }}
-                    >编辑
+                    >编辑 { deldatas(record.id) }}>
+                            
+                        
 
                 }
             },
@@ -1809,20 +1812,20 @@ const BrideTable = (props) => {
 
                     dataSource={counts || []}
                     request={async (params) => {
-                        if(whichofits=='qiaoliang'){
+                        if (whichofits == 'qiaoliang') {
                             const query = {
-                                bridgeName:sitename
+                                bridgeName: sitename
                             }
                             setRowSelected([]);
                             const res = await dispatch(getBridge(query));
                             // console.log(res)
-    
+
                             setCounts(res.payload.data)
                             return {
                                 ...res,
                                 total: res.payload.data ? res.payload.data.count : 0
                             }
-                        }if(whichofits=='gongcheng'){
+                        } if (whichofits == 'gongcheng') {
                             const query = {
                                 type: 'bridge',
                                 // type:sitename
@@ -1835,7 +1838,7 @@ const BrideTable = (props) => {
                                 total: res.payload.data ? res.payload.data.count : 0
                             }
                         }
-                       
+
                     }}
                     search={{
                         defaultCollapsed: false,
diff --git a/web/client/src/sections/fillion/components/highways/highwaysdata.js b/web/client/src/sections/fillion/components/highways/highwaysdata.js
index 0ced59c2..854781da 100644
--- a/web/client/src/sections/fillion/components/highways/highwaysdata.js
+++ b/web/client/src/sections/fillion/components/highways/highwaysdata.js
@@ -3,7 +3,7 @@ import { connect } from 'react-redux';
 import { Form, Spin, Table } from 'antd';
 import { ModalForm, ProForm, ProFormText,ProFormSelect } from '@ant-design/pro-form';
 import { putOperaTional,putHighways } from "../../actions/infor"
-import { _ } from 'lodash'
+import  _  from 'lodash'
 
 const HightModal = (props) => {
     const { visible, onVisibleChange, typecard, rewkeys, recortd, dispatch, setRecortd,setDelet } = props
diff --git a/web/client/src/sections/fillion/components/infor/details.js b/web/client/src/sections/fillion/components/infor/details.js
index 26e32560..73b24c7d 100644
--- a/web/client/src/sections/fillion/components/infor/details.js
+++ b/web/client/src/sections/fillion/components/infor/details.js
@@ -155,15 +155,14 @@ const UserModal = (props) => {
                                 setDelet(values)
                                 const query = { ...values, level: whichofits, roadId: records?.[0]?.value || '' }
                                 dispatch(putRoadway(query)).then((res) => {
-                                    setSuccess(res.success)
-                                    
+
                                 })
                                 return true
                             } else {
                                 setDelet(values)
                                 const query = { ...values, level: whichofits }
                                 dispatch(putRoadway(query)).then((res) => {
-                                    setSuccess(res.success)
+                                    
                                     
                                 })
                                 return true
@@ -174,14 +173,14 @@ const UserModal = (props) => {
                             setDelet(values)
                                 const query = { ...values, roadId: records?.[0]?.value || '' }
                                 dispatch(putBridge(query)).then((res) => {
-                                    setSuccess(res.success)
+                                    
                                 })
                                 return true
                             } else {
                             setDelet(values)
                                 const query = { ...values }
                                 dispatch(putBridge(query)).then((res) => {
-                                    setSuccess(res.success)
+                                    
                                 })
                                 return true
                             }
@@ -189,16 +188,16 @@ const UserModal = (props) => {
                         if (rewkeys === 'weihuo' || rewkeys === 'chuzu') {
                             if (typecard == '111') {
                                 setDelet(values)
-                                const query = { ...values, vehicleId: records?.[0]?.value || '', type: rewkeys === 'chuzu' ? '出租车' : '危货' }
+                                const query = { ...values, vehicleId: records?.[0]?.value || '', type: rewkeys == 'chuzu' ? '出租车' : '危货' }
                                 dispatch(putSpecificVehicle(query)).then((res) => {
-                                    setSuccess(res.success)
+                                    
                                 })
                                 return true
                             } else {
                             setDelet(values)
-                                const query = { ...values, type: rewkeys }
+                                const query = { ...values, type: rewkeys == 'chuzu' ? '出租车' : '危货' }
                                 dispatch(putSpecificVehicle(query)).then((res) => {
-                                    setSuccess(res.success)
+                                    
                                 })
                                 return true
                             }
@@ -208,14 +207,14 @@ const UserModal = (props) => {
                                 setDelet(values)
                                 const query = { ...values, businessId: records?.[0]?.value, type: rewkeys == 'chuzu' ? '出租车' : '危货' }
                                 dispatch(putHouseholds(query)).then((res) => {
-                                    setSuccess(res.success)
+                                    
                                 })
                                 return true
                             } else {
                             setDelet(values)
                                 const query = { ...values, type: rewkeys === 'chuzu' ? '出租车' : '危货' }
                                 dispatch(putHouseholds(query)).then((res) => {
-                                    setSuccess(res.success)
+                                    
                                 })
                                 return true
                             }
@@ -224,14 +223,14 @@ const UserModal = (props) => {
                                 setDelet(values)
                                 const query = { ...values, lineId: records?.[0]?.value || '' }
                                 dispatch(putCircuit(query)).then((res) => {
-                                    setSuccess(res.success)
+                                    
                                 })
                                 return true
                             } else {
                             setDelet(values)
                                 const query = { ...values }
                                 dispatch(putCircuit(query)).then((res) => {
-                                    setSuccess(res.success)
+                                    
                                 })
                                 return true
                             }
@@ -241,14 +240,14 @@ const UserModal = (props) => {
                                 setDelet(values)
                                 const query = { ...values, carId: records?.[0]?.value || '' }
                                 dispatch(putVehicle(query)).then((res) => {
-                                    setSuccess(res.success)
+                                    
                                 })
                                 return true
                             } else {
                             setDelet(values)
                                 const query = { ...values }
                                 dispatch(putVehicle(query)).then((res) => {
-                                    setSuccess(res.success)
+                                    
                                 })
                                 return true
                             }
@@ -258,7 +257,7 @@ const UserModal = (props) => {
                                 setDelet(values)
                                 const query = { ...values, overspeedId: records?.[0]?.value || '' }
                                 dispatch(putPurchase(query)).then((res) => {
-                                    setSuccess(res.success)
+                                    
                                     setMonitor(res)
                                 })
                                 return true
@@ -266,7 +265,7 @@ const UserModal = (props) => {
                             setDelet(values)
                                 const query = { ...values }
                                 dispatch(putPurchase(query)).then((res) => {
-                                    setSuccess(res.success)
+                                    
                                     setMonitor(res)
                                 })
                                 return true
diff --git a/web/client/src/sections/fillion/components/inforTable.js b/web/client/src/sections/fillion/components/inforTable.js
index 00ceafb7..11b05946 100644
--- a/web/client/src/sections/fillion/components/inforTable.js
+++ b/web/client/src/sections/fillion/components/inforTable.js
@@ -51,6 +51,14 @@ const InForTable = (props) => {
                     `attachments?src=files/${resTextIs}&filename=${encodeURIComponent(resTextIs)}&token=${user.token}`)
             })
     }
+    const deldata = (id) => { // 治超删除
+        const query = {
+            overspeedId: id
+        }
+        dispatch(delPurchase(query)).then((res) => {
+            setDelet(res)
+        })
+    }
     const columns =
         [
             {
@@ -364,16 +372,11 @@ const InForTable = (props) => {
                             setTypecard('111')
                             setRecortd(record)
                         }}
-                    >编辑
+                    >编辑
+
+                         { deldata(record.id) }}>
+                            
+                        
 
                 }
             },
@@ -438,8 +441,8 @@ const InForTable = (props) => {
                     request={async (params) => {
                         console.log(params)
                         const query = {
-                            limit:params.pageSize,
-                            page:params.current-1,
+                            limit: params.pageSize,
+                            page: params.current - 1,
                             nameOfInspectionPoint: nameOfInspectionPoint,
                             licensePlate: licensePlate,
                             numberOfAxles: numberOfAxles,
diff --git a/web/client/src/sections/fillion/components/operationalTable.js b/web/client/src/sections/fillion/components/operationalTable.js
index 5df036be..119e1629 100644
--- a/web/client/src/sections/fillion/components/operationalTable.js
+++ b/web/client/src/sections/fillion/components/operationalTable.js
@@ -1,9 +1,9 @@
-import React, { useEffect, useState,useRef } from 'react';
+import React, { useEffect, useState, useRef } from 'react';
 import { connect } from 'react-redux';
 import { Spin, Button, Popconfirm, Badge } from 'antd';
 import ProTable from '@ant-design/pro-table';
 import './protable.less'
-import { getOperaTional, getSpecificVehicle, getHouseholds,delSpecificVehicle,delHouseholds } from "../actions/infor"
+import { getOperaTional, getSpecificVehicle, getHouseholds, delSpecificVehicle, delHouseholds } from "../actions/infor"
 import UserModal from './infor/details';
 import HightModal from './highways/highwaysdata';
 
@@ -24,7 +24,7 @@ const OperaTionalTable = (props) => {
     const [delet, setDelet] = useState()
 
     const ref = useRef()
-    useEffect(() => { ref.current.reload() }, [rewkeys,activeKey,delet])
+    useEffect(() => { ref.current.reload() }, [rewkeys, activeKey, delet])
     //打开弹窗
     const openModal = (type, record) => {
         setModalVisible(true);
@@ -35,6 +35,23 @@ const OperaTionalTable = (props) => {
             setModalRecord(null);
         }
     }
+    const deldata = (id) => { // 出租危货
+        const query = {
+            vehicleId: id
+        }
+        dispatch(delSpecificVehicle(query)).then((res) => {
+            setDelet(res)
+        })
+    }
+
+    const deldatas = (id) => { // 业户
+        const query = {
+            businessId: id
+        }
+        dispatch(delHouseholds(query)).then((res) => {
+            setDelet(res)
+        })
+    }
     //打开弹窗
     const hightModal = (type, record) => {
         setModalVisibleyilan(true);
@@ -73,7 +90,7 @@ const OperaTionalTable = (props) => {
                 search: false,
 
                 fieldProps: {
-                   
+
                     placeholder: '请输入道路名称进行搜索',
                     getPopupContainer: (triggerNode) => triggerNode.parentNode,
                 },
@@ -132,7 +149,7 @@ const OperaTionalTable = (props) => {
                 render: (dom, record) => {
                     return record.nameOfBusinessOwner
                 },
-            }, 
+            },
             {
                 title: '车籍地',
                 search: false,
@@ -696,16 +713,9 @@ const OperaTionalTable = (props) => {
                             setTypecard('111')
                             setRecortd(record)
                         }}
-                    >编辑
+                    >编辑  { deldata(record.id) }}>
+                            
+                        
 
                 }
             },
@@ -759,7 +769,7 @@ const OperaTionalTable = (props) => {
                 render: (dom, record) => {
                     return record.nameOfBusinessOwner
                 },
-            },  {
+            }, {
                 title: '品名',
                 search: false,
                 dataIndex: 'containers',
@@ -1336,16 +1346,9 @@ const OperaTionalTable = (props) => {
                             setTypecard('111')
                             setRecortd(record)
                         }}
-                    >编辑
+                    >编辑  { deldata(record.id) }}>
+                            
+                        
 
                 }
             },
@@ -1813,16 +1816,9 @@ const OperaTionalTable = (props) => {
                             setTypecard('111')
                             setRecortd(record)
                         }}
-                    >编辑
+                    >编辑 { deldatas(record.id) }}>
+                            
+                        
 
                 }
             },
@@ -1881,16 +1877,20 @@ const OperaTionalTable = (props) => {
                                 },
                                 {
                                     key: 'tab2',
-                                    label:  { {
-                                    setRewkeys('chuzu')
-                                } }}>出租车{activeKey === 'tab2'},
+                                    label:  {
+                                        {
+                                            setRewkeys('chuzu')
+                                        }
+                                    }}>出租车{activeKey === 'tab2'},
 
                                 },
                                 {
                                     key: 'tab3',
-                                    label:  { {
-                                    setRewkeys('weihuo') 
-                                } }}>危险货运{activeKey === 'tab3'},
+                                    label:  {
+                                        {
+                                            setRewkeys('weihuo')
+                                        }
+                                    }}>危险货运{activeKey === 'tab3'},
 
                                 }, {
                                     key: 'tab4',
@@ -1918,58 +1918,62 @@ const OperaTionalTable = (props) => {
                     }}
                     columns={columns[activeKey]}
 
-                    dataSource={counts ||  []}
+                    dataSource={counts || []}
                     request={async (params, sort, filter) => {
-                        if(rewkeys=='keyun'){
+                        if (rewkeys == 'keyun') {
                             const query = {}
-                        setRowSelected([]);
-                        const res = await dispatch(getOperaTional(query));
-                        setCounts(res.payload.data)
-                        return {
-                            ...res,
-                            total: res.payload.data ? res.payload.data.count : 0
-                        }}
-                        if(rewkeys=='chuzu'){
+                            setRowSelected([]);
+                            const res = await dispatch(getOperaTional(query));
+                            setCounts(res.payload.data)
+                            return {
+                                ...res,
+                                total: res.payload.data ? res.payload.data.count : 0
+                            }
+                        }
+                        if (rewkeys == 'chuzu') {
                             const query = {
-                                type:'出租车',
-                                nameOfBusinessOwner:sitename
+                                type: '出租车',
+                                nameOfBusinessOwner: sitename
                             }
-                        setRowSelected([]);
-                        const res = await dispatch(getSpecificVehicle(query));
-                        setCounts(res.payload.data)
-                        return {
-                            ...res,
-                            total: res.payload.data ? res.payload.data.count : 0
-                        }}
-                        if(rewkeys=='weihuo'){
+                            setRowSelected([]);
+                            const res = await dispatch(getSpecificVehicle(query));
+                            setCounts(res.payload.data)
+                            return {
+                                ...res,
+                                total: res.payload.data ? res.payload.data.count : 0
+                            }
+                        }
+                        if (rewkeys == 'weihuo') {
                             const query = {
-                                type:'危货',
-                                nameOfBusinessOwner:sitename
+                                type: '危货',
+                                nameOfBusinessOwner: sitename
                             }
-                        setRowSelected([]);
-                        const res = await dispatch(getSpecificVehicle(query));
-                        setCounts(res.payload.data)
-                        return {
-                            ...res,
-                            total: res.payload.data ? res.payload.data.count : 0
-                        }}
-                        if(rewkeys=='yehu'){
+                            setRowSelected([]);
+                            const res = await dispatch(getSpecificVehicle(query));
+                            setCounts(res.payload.data)
+                            return {
+                                ...res,
+                                total: res.payload.data ? res.payload.data.count : 0
+                            }
+                        }
+                        if (rewkeys == 'yehu') {
                             const query = {
-                                nameOfBusinessOwner:sitename
+                                nameOfBusinessOwner: sitename
                             }
-                        setRowSelected([]);
-                        const res = await dispatch(getHouseholds(query));
-                        setCounts(res.payload.data)
-                        return {
-                            ...res,
-                            total: res.payload.data ? res.payload.data.count : 0
-                        }}
+                            setRowSelected([]);
+                            const res = await dispatch(getHouseholds(query));
+                            setCounts(res.payload.data)
+                            return {
+                                ...res,
+                                total: res.payload.data ? res.payload.data.count : 0
+                            }
+                        }
                     }}
                     search={{
                         defaultCollapsed: false,
                         optionRender: (searchConfig, formProps, dom) => [
                             ...dom.reverse(),
-                            ['tab2','tab3','tab4'].includes(activeKey) ?  { props.exports(rowSelected, counts) }}>
+                            ['tab2', 'tab3', 'tab4'].includes(activeKey) ?  { props.exports(rowSelected, counts) }}>
                                 
+                    >编辑 { deldata(record.id) }}>
+                            
+                        
 
                 }
             },
@@ -1113,16 +1122,9 @@ const requestcheliang = (name) => {
                             setTypecard('111')
                             setRecortd(record)
                         }}
-                    >编辑
+                    >编辑 { deldatas(record.id) }}>
+                            
+                        
 
                 }
             },
@@ -1173,16 +1175,20 @@ const requestcheliang = (name) => {
                             items: [
                                 {
                                     key: 'tab1',
-                                    label:  { {
-                                    setRewkeys('xianlu')
-                                } }}>运营线路{activeKey === 'tab1'},
+                                    label:  {
+                                        {
+                                            setRewkeys('xianlu')
+                                        }
+                                    }}>运营线路{activeKey === 'tab1'},
 
                                 },
                                 {
                                     key: 'tab2',
-                                    label:  { {
-                                    setRewkeys('cheliang')
-                                } }}>车辆信息{activeKey === 'tab2'},
+                                    label:  {
+                                        {
+                                            setRewkeys('cheliang')
+                                        }
+                                    }}>车辆信息{activeKey === 'tab2'},
 
                                 }
                             ],
@@ -1211,31 +1217,31 @@ const requestcheliang = (name) => {
 
                     dataSource={counts || []}
                     request={async (params) => {
-                        if(rewkeys=='xianlu'){
+                        if (rewkeys == 'xianlu') {
                             const query = {
-                                fleet:sitename
+                                fleet: sitename
+                            }
+                            setRowSelected([]);
+                            const res = await dispatch(getCircuit(query));
+                            setCounts(res.payload.data)
+                            return {
+                                ...res,
+                                total: res.payload.data ? res.payload.data.count : 0
+                            }
                         }
-                        setRowSelected([]);
-                        const res = await dispatch(getCircuit(query));
-                        setCounts(res.payload.data)
-                        return {
-                            ...res,
-                            total: res.payload.data ? res.payload.data.count : 0
-                        }
-                        }
-                        if(rewkeys=='cheliang'){
+                        if (rewkeys == 'cheliang') {
                             const query = {
-                                fleet:sitename
-                        }
-                        setRowSelected([]);
-                        const res = await dispatch(getVehicle(query));
-                        setCounts(res.payload.data)
-                        return {
-                            ...res,
-                            total: res.payload.data ? res.payload.data.count : 0
+                                fleet: sitename
+                            }
+                            setRowSelected([]);
+                            const res = await dispatch(getVehicle(query));
+                            setCounts(res.payload.data)
+                            return {
+                                ...res,
+                                total: res.payload.data ? res.payload.data.count : 0
+                            }
                         }
-                        }
-                        
+
                     }}
                     search={{
                         defaultCollapsed: false,
@@ -1252,13 +1258,13 @@ const requestcheliang = (name) => {
 
                 >
                 
-                {modalVisible ?  {
     const [whichofits, setWhichofits] = useState('县')
     const [delet, setDelet] = useState()
     const ref = useRef()
-    useEffect(() => { ref.current.reload() }, [ whichofits, delet])
+    useEffect(() => { ref.current.reload() }, [whichofits, delet])
     //打开弹窗
     const openModal = (type, record) => {
         setModalVisible(true);
@@ -42,7 +42,24 @@ const TransporTationTable = (props) => {
             setModalRecord(null);
         }
     }
-    // console.log(counts)
+    //删除daolu
+    const deldata = (id) => {
+        const query = {
+            roadId: id
+        }
+        dispatch(delRoadway(query)).then((res) => {
+            setDelet(res)
+        })
+    }
+    //删除工程
+    const deldatas = (id) => {
+        const query = {
+            projectId: id
+        }
+        dispatch(delProject(query)).then((res) => {
+            setDelet(res)
+        })
+    }
     //批量导出
     const exports = (ids, counts) => {
         // console.log(user);
@@ -1170,22 +1187,20 @@ const TransporTationTable = (props) => {
                 width: 120,
                 fixed: 'right',
                 render: (dom, record) => {
+                    // node = renderRemoveUser('移除');
                     return 
+                    >编辑
+                         { deldata(record.id) }}>
+                    
 
                 }
             },
@@ -2337,14 +2352,11 @@ const TransporTationTable = (props) => {
                             setRecortd(record)
 
                         }}
-                    >编辑
+                    >编辑
+                         { deldata(record.id) }}>
+                            
+                        
+                    
 
                 }
             },
@@ -3497,15 +3509,10 @@ const TransporTationTable = (props) => {
                             setRecortd(record)
 
                         }}
-                    >编辑
+                    >编辑
+                     { deldata(record.id) }}>
+                            
+                        
 
                 }
             },
@@ -3688,16 +3695,11 @@ const TransporTationTable = (props) => {
                             setTypecard('111')
                             setRecortd(record)
                         }}
-                    >编辑
+                    >编辑
+                     { deldatas(record.id) }}>
+                            
+                        
+                    
 
                 }
             },
@@ -3747,19 +3749,19 @@ const TransporTationTable = (props) => {
                                 {
                                     key: 'tab1',
                                     label:  {
-                                        setWhichofits('xian')
+                                        setWhichofits('县')
                                     }}>县道{activeKey === 'tab1'},
                                 },
                                 {
                                     key: 'tab2',
                                     label:  {
-                                        setWhichofits('xiang')
+                                        setWhichofits('乡')
                                     }}>乡道{activeKey === 'tab2'},
                                 },
                                 {
                                     key: 'tab3',
                                     label:  {
-                                        setWhichofits('cun')
+                                        setWhichofits('村')
                                     }}>村道{activeKey === 'tab3'},
                                 }, {
                                     key: 'tab4',
@@ -3875,6 +3877,7 @@ const TransporTationTable = (props) => {
                 rewkeys={'road'}
                 recortd={recortd}
                 setRecortd={setRecortd}
+                setDelet={setDelet}
             /> : ''}
         
     )
diff --git a/web/client/src/sections/organization/components/userModal.js b/web/client/src/sections/organization/components/userModal.js
index 29a91f9f..d229bc7a 100644
--- a/web/client/src/sections/organization/components/userModal.js
+++ b/web/client/src/sections/organization/components/userModal.js
@@ -1,22 +1,25 @@
 import React from 'react';
 import { connect } from 'react-redux';
-import { Spin, Card, Modal, TreeSelect, message } from 'antd';
+import { Spin } from 'antd';
 import ProForm, { ProFormText, ModalForm, ProFormSwitch, ProFormTreeSelect } from '@ant-design/pro-form';
 
 const UserModal = (props) => {
     const { visible, modalType, depData, onVisibleChange, onConfirm, editData } = props
-    const reg_tel = /^1([358][0-9]|4[579]|66|7[0135678]|9[89])[0-9]{8}$/;
     const onFinish = (values) => {
         if (onConfirm) {
             onConfirm(values);
         }
     }
-    const mobile = (value) => {
-        if (reg_tel.test(value)) {
-            return
+
+    const checkName = (rule, value, callback) => {
+        if (value && value.replace(/[^\u4E00-\u9FA5]/g).includes('undefined')) {
+            callback(new Error('请输入中文!'));
+        } else {
+            callback()
         }
-        return message('请输入姓名')
     }
+
+
     return (
         
              {
                         label="姓名"
                         required
                         placeholder="请输入姓名"
-                        rules={[{ required: true, message: '请输入姓名' },{ max: 5, message: '请输入5个字以内的名称' }]}
+                        rules={[{ required: true, message: '请输入姓名' },
+                        { max: 5, message: '请输入5个字以内的名称' },
+                        { validator: checkName }
+                        ]}
                     />
                     < ProFormText
                         name={['contract', 'phone']}
diff --git a/web/client/src/sections/organization/containers/user.js b/web/client/src/sections/organization/containers/user.js
index b32dffc2..634c2c7c 100644
--- a/web/client/src/sections/organization/containers/user.js
+++ b/web/client/src/sections/organization/containers/user.js
@@ -374,7 +374,6 @@ const UserManage = (props) => {
 
 function mapStateToProps(state) {
     const { depMessage, depUser, global } = state;
-    console.log('depMessage:', depMessage);
     // console.log(state);
     return {
         clientHeight: global.clientHeight,
diff --git a/web/client/src/sections/quanju/containers/footer/conserve/index.js b/web/client/src/sections/quanju/containers/footer/conserve/index.js
index 7a141fe5..8d6328c1 100644
--- a/web/client/src/sections/quanju/containers/footer/conserve/index.js
+++ b/web/client/src/sections/quanju/containers/footer/conserve/index.js
@@ -19,25 +19,24 @@ const Conserve = (props) => {
             setLoading(false)
             setRoadData(res.payload.data || {})
         })
-        dispatch(getHighways()).then(res =>{
+        dispatch(getHighways()).then(res => {
             setHighwaysData(res.payload.data || [])
         })
-        dispatch(getRoadMaintenances()).then(res =>{
+        dispatch(getRoadMaintenances()).then(res => {
             setRoadMaintenances(res.payload.data || [])
         })
     }, [])
 
     return (
-       
-         
     )
 }
 function mapStateToProps(state) {
-
     // const { auth } = state;
 
     return {
diff --git a/web/client/src/sections/quanju/containers/footer/conserve/left/left-bottom.js b/web/client/src/sections/quanju/containers/footer/conserve/left/left-bottom.js
index 73b69818..29d39de1 100644
--- a/web/client/src/sections/quanju/containers/footer/conserve/left/left-bottom.js
+++ b/web/client/src/sections/quanju/containers/footer/conserve/left/left-bottom.js
@@ -37,7 +37,7 @@ const LeftBottom = (props) => {
           total={totalData?.toFixed(3) || 0}
           colorList={colorList}
           textLeft={'20%'}
-          numLeft={'16%'}
+          numLeft={'14.5%'}
           underColorList={underColorList}
         />
       
diff --git a/web/client/src/sections/quanju/containers/footer/conserve/right/right-bottom.js b/web/client/src/sections/quanju/containers/footer/conserve/right/right-bottom.js
index f3f15c41..44f52f73 100644
--- a/web/client/src/sections/quanju/containers/footer/conserve/right/right-bottom.js
+++ b/web/client/src/sections/quanju/containers/footer/conserve/right/right-bottom.js
@@ -62,7 +62,7 @@ const RightBottom = (props) => {
           height='100%'
           text='养护总数'
           textLeft={'21%'}
-          numLeft={'23%'}
+          numLeft={'22%'}
           total={totalData || 0}
           colorList={colorList}
           underColorList={underColorList}
diff --git a/web/client/src/sections/quanju/containers/footer/operation/left.js b/web/client/src/sections/quanju/containers/footer/operation/left.js
index 7e7e9f81..2966deaf 100644
--- a/web/client/src/sections/quanju/containers/footer/operation/left.js
+++ b/web/client/src/sections/quanju/containers/footer/operation/left.js
@@ -6,6 +6,7 @@ import { getBusTierList } from '../../../actions/example'
 import './style.less'
 
 
+
 const Left = (props) => {
     const [treeData, setTreeData] = useState([])
     const [treeDataList, setTreeDataList] = useState([])
@@ -39,9 +40,10 @@ const Left = (props) => {
     };
     const loop = (treeData) =>
         treeData.map((item) => {
-            const index = item.title.indexOf(searchValue);
-            const beforeStr = item.title.substr(0, index);
-            const afterStr = item.title.substr(index + searchValue.length);
+            // console.log(item,'===> item -----');
+            const index = item.title != null && item.title.indexOf(searchValue);
+            const beforeStr = item.title != null && item.title.substr(0, index);
+            const afterStr = item.title != null && item.title.substr(index + searchValue.length);
             const title =
                 index > -1 ? (
                     
@@ -75,47 +77,52 @@ const Left = (props) => {
         let busTierList = []
         let busTierOpen = []
         let dataList = []
-        
-        busTier && busTier.data && busTier.data.forEach((e, index) => {
-            if (index == 0) {
-                busTierOpen.push(e.name)
-            }
-            busTierList.push({
-                key: e.name,
-                title: e.name,
-                children: e.child.map(s => {
-                    return {
-                        key: s.name,
-                        title: s.name,
-                        children: s.child.map(i => {
-                            return {
-                                key: i.vehicleLicensePlateNumber,
-                                title: i.vehicleLicensePlateNumber,
-                            }
-                        })
-                    }
+        let busTierNewList = []
+        if (busTier && busTier.data && busTier.data.length > 0) {
+            busTierNewList.push(busTier && busTier.data && busTier.data[0])
+        }
+        if (busTierNewList.length > 0) {
+            busTierNewList.forEach((e, index) => {
+                if (index == 0) {
+                    busTierOpen.push(e.name)
+                }
+                busTierList.push({
+                    key: e.name,
+                    title: e.name,
+                    children: e.child.map(s => {
+                        return {
+                            key: s.name,
+                            title: s.name,
+                            children: s.child.map(i => {
+                                return {
+                                    key: i.name,
+                                    title: i.name,
+                                    children: i.child.map(x => {
+                                        return {
+                                            key: x.name,
+                                            title: x.name,
+                                        }
+                                    })
+                                }
+                            })
+                        }
 
+                    })
                 })
             })
-        })
-        busTier && busTier.data && busTier.data.forEach(e => {
-            dataList.push({
-                key: e.name,
-                title: e.name,
-            })
-            e.child.forEach(i => {
-                dataList.push({
-                    key: i.name,
-                    title: i.name,
-                })
-                i.child.forEach(s => {
-                    dataList.push({
-                        key: s.vehicleLicensePlateNumber,
-                        title: s.vehicleLicensePlateNumber,
+            busTierNewList.forEach(e => {
+                e.child.forEach(i => {
+                    i.child.forEach(s => {
+                        s.child.forEach(x => {
+                            dataList.push({
+                                key: x.name,
+                                title: x.name
+                            })
+                        })
                     })
                 })
             })
-        })
+        }
         setTreeData(busTierList)
         setExpandedKeys(busTierOpen)
         setTreeDataList(dataList)
diff --git a/web/config.js b/web/config.js
index 436708a8..20df1b7f 100644
--- a/web/config.js
+++ b/web/config.js
@@ -16,9 +16,11 @@ dev && console.log('\x1B[33m%s\x1b[0m', '请遵循并及时更新 readme.md,
 args.option(['p', 'port'], '启动端口');
 args.option(['u', 'api-url'], 'webapi的URL');
 args.option(['r', 'report-node'], '报表进程地址');
+args.option(['r', 'report-node'], '报表进程地址');
 
 const flags = args.parse(process.argv);
 const FS_UNIAPP_API = process.env.FS_UNIAPP_API || flags.apiUrl;
+const QINIU_DOMAIN_QNDMN_RESOURCE = process.env.ANXINCLOUD_QINIU_DOMAIN_QNDMN_RESOURC || flags.qndmn;
 
 if (!FS_UNIAPP_API) {
     console.log('缺少启动参数,异常退出');
@@ -35,6 +37,12 @@ const product = {
             host: FS_UNIAPP_API,
             match: /^\/_api\//,
         }
+    }, {
+        entry: require('./middlewares/proxy').entry,
+        opts: {
+            host: QINIU_DOMAIN_QNDMN_RESOURCE,
+            match: /^\/_file-server\//,
+        }
     }, {
         entry: require('./middlewares/proxy').entry,
         opts: {