diff --git a/src/components/TableModule/index.jsx b/src/components/TableModule/index.jsx index 29eb5dd..3594216 100644 --- a/src/components/TableModule/index.jsx +++ b/src/components/TableModule/index.jsx @@ -765,7 +765,7 @@ const TableModule = forwardRef((props, ref) => { }, []); const [getRoadList, setGetRoadList] = useState([]) useEffect(() => { - ajax.getRoadSearch().then((res) => { + ajax.getNewRoadSearch().then((res) => { setGetRoadList(res.data); }) }, []) diff --git a/src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkingAlyPeriod/loadable.jsx b/src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkingAlyPeriod/loadable.jsx index 8d598ab..aeb041a 100644 --- a/src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkingAlyPeriod/loadable.jsx +++ b/src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkingAlyPeriod/loadable.jsx @@ -261,132 +261,9 @@ function ParkingAlyPeriod() { this.random(arr) } } - const color = ['#5470c6','#91cc75','#fac858','#ee6666','#73c0de','#fc8452','#3ba272','#9a60b4','#ee7ccc'] - console.log(Math.round(Math.random()*10)) + const color = ['#5470c6', '#91cc75', '#fac858', '#ee6666', '#73c0de', '#fc8452', '#3ba272', '#9a60b4', '#ee7ccc'] //停车饱和趋势分析分析 折线图 hour 时间对比 const getParkOptionHour = (data) => { - data = [ - { - "date": "2023-11-20", - "hour": "00:00", - "occupancy_rate": "0.02%" - }, - { - "date": "2023-11-22", - "hour": "01:00", - "occupancy_rate": "0%" - }, - { - "date": "2023-11-22", - "hour": "02:00", - "occupancy_rate": "0%" - }, - { - "date": "2023-11-22", - "hour": "03:00", - "occupancy_rate": "0%" - }, - { - "date": "2023-11-22", - "hour": "04:00", - "occupancy_rate": "0%" - }, - { - "date": "2023-11-22", - "hour": "05:00", - "occupancy_rate": "0%" - }, - { - "date": "2023-11-22", - "hour": "06:00", - "occupancy_rate": "0%" - }, - { - "date": "2023-11-22", - "hour": "07:00", - "occupancy_rate": "0%" - }, - { - "date": "2023-11-29", - "hour": "08:00", - "occupancy_rate": "0.07%" - }, - { - "date": "2023-11-22", - "hour": "09:00", - "occupancy_rate": "0.26%" - }, - { - "date": "2023-11-24", - "hour": "10:00", - "occupancy_rate": "0.18%" - }, - { - "date": "2023-11-22", - "hour": "11:00", - "occupancy_rate": "0.11%" - }, - { - "date": "2023-11-23", - "hour": "12:00", - "occupancy_rate": "0.06%" - }, - { - "date": "2023-11-22", - "hour": "13:00", - "occupancy_rate": "0.08%" - }, - { - "date": "2023-11-21", - "hour": "14:00", - "occupancy_rate": "0.35%" - }, - { - "date": "2023-11-29", - "hour": "15:00", - "occupancy_rate": "0.26%" - }, - { - "date": "2023-11-20", - "hour": "16:00", - "occupancy_rate": "0.32%" - }, - { - "date": "2023-11-22", - "hour": "17:00", - "occupancy_rate": "0.22%" - }, - { - "date": "2023-11-22", - "hour": "18:00", - "occupancy_rate": "0.14%" - }, - { - "date": "2023-11-21", - "hour": "19:00", - "occupancy_rate": "0.01%" - }, - { - "date": "2023-11-22", - "hour": "20:00", - "occupancy_rate": "0%" - }, - { - "date": "2023-11-22", - "hour": "21:00", - "occupancy_rate": "0.05%" - }, - { - "date": "2023-11-21", - "hour": "22:00", - "occupancy_rate": "0.02%" - }, - { - "date": "2023-11-22", - "hour": "23:00", - "occupancy_rate": "0.01%" - } - ] console.log(data) if (!data || data.length <= 0) { setHourData({}) @@ -399,7 +276,7 @@ function ParkingAlyPeriod() { ); // 构建数据对象 let seriesData = areaNames.map((areaName, index) => { - let color2 = color[Math.round(Math.random()*10)] + let color2 = color[Math.round(Math.random() * 10)] // 获取数据 let areaData = data[0].date ? data.filter((item) => item.date === areaName) : data // 构建数据对象 @@ -415,8 +292,8 @@ function ParkingAlyPeriod() { }, normal: { color: color2, //改变折线点的颜色 - lineStyle:{ - color:color2, + lineStyle: { + color: color2, } //改变折线颜色 } @@ -442,13 +319,7 @@ function ParkingAlyPeriod() { }; }); - setHourData({ - ...lineChartOption(areaNames, xAxisData, "饱和度", seriesData), - // tooltip: { - // trigger: "axis", - // formatter: "{a}
{b}:{c}", - // }, - }); + setHourData({ ...lineChartOption(areaNames, xAxisData, "饱和度", seriesData) }); }; function getParkingIncome(data) { ajax @@ -462,14 +333,17 @@ function ParkingAlyPeriod() { .catch((err) => console.error(err)); } function getParkingData(data) { + setLoading(true) + setHourData({}) ajax .getParkingAlyPeriodParkLine(data) .then((res) => { if (res.status === 20000) { getParkOption(res.data.list?.area_list); setKeyVal(res.data.list?.hour_list.length) + //setHourData({}) getParkOptionHour(res.data.list?.hour_list); - + setLoading(false) } }) .catch((err) => console.error(err)); @@ -824,7 +698,7 @@ function ParkingAlyPeriod() { option={hourData} style={{ height: "300px", width: "100%", overflow: "hidden", background: '#545d74' }} /> : -
暂无数据
+
{loading ? "加载中" : "暂无数据"}
) : ( diff --git a/src/pages/FinancialMgm/OrderInquiry/ParkingOrderInquiry/index.jsx b/src/pages/FinancialMgm/OrderInquiry/ParkingOrderInquiry/index.jsx index 692bedb..4fdb742 100644 --- a/src/pages/FinancialMgm/OrderInquiry/ParkingOrderInquiry/index.jsx +++ b/src/pages/FinancialMgm/OrderInquiry/ParkingOrderInquiry/index.jsx @@ -917,19 +917,19 @@ function ParkingOrderInquiry(props) { ):null} */} { tabKeyChild == 1 ? -
- -
: null +
+ +
: null } diff --git a/src/pages/InRoadMgm/BusinessMgm/ChargeRules/EditModal.jsx b/src/pages/InRoadMgm/BusinessMgm/ChargeRules/EditModal.jsx index c12d887..750ed14 100644 --- a/src/pages/InRoadMgm/BusinessMgm/ChargeRules/EditModal.jsx +++ b/src/pages/InRoadMgm/BusinessMgm/ChargeRules/EditModal.jsx @@ -21,6 +21,7 @@ const FormModal = (props) => { const { yisaData = {}, editVisible, + setGetEditVisible=()=>{}, editModal = () => { }, getEditData = {}, getData=()=>{} @@ -219,11 +220,21 @@ const FormModal = (props) => { // 表单提交 const onFinish = (data) => { //校验数据 + data['rules'].map(item => { + console.log(item); + item.details.map(item=>{ + item["start"] = moment(item["start"]).format('HH:mm'); + item["end"] = moment(item["end"]).format('HH:mm'); + }) + if (item.cdate) { + item["cdate"] = moment(item["cdate"]).format('YYYY-MM-DD HH:mm:ss'); + } + }) if(handleFormValidation(data,0)&&handleFormValidation(data,1)){ - let newData = handelDate(data, 1) - ajax.deleteChangeRules({source:newData}).then(res => { + // let newData = handelDate(data, 1) + ajax.deleteChangeRules({source:data}).then(res => { if (res.status === 20000) { - editVisible = false + setGetEditVisible(false) getData() } }) @@ -231,14 +242,12 @@ const FormModal = (props) => { }; useEffect(() => { - console.log("================="); - console.log(yisaData); let newObj = { ...defaultData } if (JSON.stringify(yisaData) != "{}") { newObj = handelDate(yisaData, 2) } newObj.rules = newObj?.source?.rules - delete newObj.source + // delete newObj.source //生成初始组件 init(newObj); form.setFieldsValue(newObj); diff --git a/src/pages/InRoadMgm/BusinessMgm/ChargeRules/loadable.jsx b/src/pages/InRoadMgm/BusinessMgm/ChargeRules/loadable.jsx index fe412a6..7e6b3c5 100644 --- a/src/pages/InRoadMgm/BusinessMgm/ChargeRules/loadable.jsx +++ b/src/pages/InRoadMgm/BusinessMgm/ChargeRules/loadable.jsx @@ -137,7 +137,7 @@ function ChargeRules(props) { return <> -
{ deleteApplyBtn(record) }}>编辑
+
{ deleteApplyBtn(record,text) }}>编辑
{ applyBtn(record) }}>删除
{ bindPark(record) }}>绑定车场
}> @@ -148,9 +148,11 @@ function ChargeRules(props) { },] //编辑 const [getEditData, setGetEditData] = useState({}) - const deleteApplyBtn = (record) => { + const deleteApplyBtn = (record,text) => { setGetEditVisible(true) setGetEditData(record) + console.log(record); + console.log(text); } //删除 const [getDeleteData, setGetDeleteData] = useState({}) @@ -477,7 +479,8 @@ function ChargeRules(props) { // className='yisa-table' dataSource={resultData.data} columns={ - handleColumns() + // handleColumns() + deployListColumns } pagination={false} loading={ajaxLoading} @@ -500,7 +503,7 @@ function ChargeRules(props) { getData()} closAddModal={closAddModal} /> - getData()} yisaData={getEditData} /> + getData()} yisaData={getEditData} /> { setApplyVisible(false) + } const applyBtn = (record) => { setGetCarStatus(record) @@ -431,11 +432,12 @@ function CollectorWorkStat(props) { setExamineVisible(true) setGetCheckData(record) columnList(record) - getTable(Object.assign({}, lastColumnList, {white_id:record.id})) + getTable(Object.assign({}, lastColumnList, {white_id:record.id,pn:1})) setGetTableId(record.id) } const examineModal = () => { setExamineVisible(false) + setLastColumnData({...lastColumnData,pn:1}) } const applyDeleteModal = () => { setApplyDeleteVisible(false) @@ -587,9 +589,11 @@ function CollectorWorkStat(props) { //查看白名单 const checkModal = () => { setCheckVisible(false) + setLastColumnData({...lastColumnData,pn:1}) } const specialDataModal = () => { setCheckVisible(false) + setLastColumnData({...lastColumnData,pn:1}) } const deactivateModal = () => { setDeactivateVisible(false) @@ -656,6 +660,7 @@ function CollectorWorkStat(props) { setGetOpinion({ content: '' }) + setLastColumnData({...lastColumnData,pn:1}) } // 获取列表数据 const getData = (data = formData) => { @@ -1332,6 +1337,7 @@ function CollectorWorkStat(props) { visible={checkVisible} onCancel={checkModal} footer={null} + destroyOnClose={true} className="specialModal" title='查看白名单' > @@ -2065,6 +2071,7 @@ function CollectorWorkStat(props) { visible={examineVisible} onCancel={examineModal} footer={null} + destroyOnClose={true} className="examineModal" title='查看白名单' > diff --git a/src/pages/InRoadMgm/PersonMgm/Performance/WorkerStat/index.scss b/src/pages/InRoadMgm/PersonMgm/Performance/WorkerStat/index.scss index 30f3168..1ab6b81 100644 --- a/src/pages/InRoadMgm/PersonMgm/Performance/WorkerStat/index.scss +++ b/src/pages/InRoadMgm/PersonMgm/Performance/WorkerStat/index.scss @@ -1,9 +1,8 @@ @import "@/assets/css/mixin.scss"; -$color-container-bg : var(--color-container-bg); -$color-user-list-bg : var(--color-user-list-bg); -$color-text : var(--color-text); -$color-primary : var(--color-primary); - +$color-container-bg: var(--color-container-bg); +$color-user-list-bg: var(--color-user-list-bg); +$color-text: var(--color-text); +$color-primary: var(--color-primary); .colorBtn { width: 90px; @@ -37,44 +36,46 @@ $color-primary : var(--color-primary); border-radius: 4px; } } -.paid-employees{ +.paid-employees { display: flex; padding: 15px; width: 100%; - .paid-search{ - .search{ + .paid-search { + .search { font-size: 16px; - font-family: Microsoft YaHei, Microsoft YaHei-Bold; + font-family: + Microsoft YaHei, + Microsoft YaHei-Bold; font-weight: 700; text-align: left; color: #eeeff1; } - label{ - margin:0 10px; + label { + margin: 0 10px; } - .yisa-search{ + .yisa-search { margin-top: 10px; } - .ant-select:not(.ant-select-customize-input) .ant-select-selector{ + .ant-select:not(.ant-select-customize-input) .ant-select-selector { background-color: #50586c !important; } - .ant-select-arrow .anticon{ + .ant-select-arrow .anticon { background-color: #50586c !important; } - .ant-input:placeholder-shown{ + .ant-input:placeholder-shown { background-color: #50586c !important; } - .timePicker{ + .timePicker { width: 350px; margin-top: 22px; - .btnBox{ - display:flex ; - .yisa-btn{ - margin-left: 20px; - } - .root_gfkk{ - margin-left: 20px; - .export-content{ + .btnBox { + display: flex; + .yisa-btn { + margin-left: 20px; + } + .root_gfkk { + margin-left: 20px; + .export-content { width: 78px; height: 33px; display: flex; @@ -86,60 +87,77 @@ $color-primary : var(--color-primary); color: #fff; margin-right: 10px; } - } - } + } } } - .paid-result{ + .paid-result { width: 100%; height: 800px; background: #505a6f; border-radius: 20px; margin-left: 17px; - .result{ + .result { padding: 25px; - .font{ - font-family: Microsoft YaHei, Microsoft YaHei-Regular; + .font { + font-family: + Microsoft YaHei, + Microsoft YaHei-Regular; font-weight: 400; text-align: left; color: #eeeff1; margin-bottom: 10px; display: inline-block; - - em{ + + em { color: #3aa8fe; margin: 0 5px; } } - .yisa-table .ant-table-thead .ant-table-cell{ + .cc-result-flow { + .ant-table-wrapper { + max-height: 680px; + overflow-y: scroll; + } + } + .ant-table-wrapper::-webkit-scrollbar { + width: 5px; + } + .ant-table-wrapper::-webkit-scrollbar-thumb { + background-color: #9da2ab; + border-radius: 10px; + } + .yisa-table .ant-table-thead .ant-table-cell { background-color: #616b83 !important; - color: #ffffff !important; - font-size: 14px; - font-family: Microsoft YaHei, Microsoft YaHei-Bold; - font-weight: 700; + color: #ffffff !important; + font-size: 14px; + font-family: + Microsoft YaHei, + Microsoft YaHei-Bold; + font-weight: 700; text-align: center; border-right: none !important; border-top-color: #888f9d !important; border-color: #888f9d !important; } - .ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table, .ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table{ + .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table, + .ant-table.ant-table-bordered > .ant-table-container > .ant-table-header > table { border-top: none !important; border-left: none !important; } - .ant-table-tbody .ant-table-row .ant-table-cell{ + .ant-table-tbody .ant-table-row .ant-table-cell { background-color: #3e4557 !important; color: #ffffff !important; text-align: center; font-size: 14px; - font-family: Microsoft YaHei, Microsoft YaHei-Regular; + font-family: + Microsoft YaHei, + Microsoft YaHei-Regular; font-weight: 400; border-right: none !important; border-left: none !important; border-bottom-color: #626b7e !important; } } - } - -} \ No newline at end of file +} diff --git a/src/pages/InRoadMgm/PersonMgm/Performance/WorkerStat/loadable.jsx b/src/pages/InRoadMgm/PersonMgm/Performance/WorkerStat/loadable.jsx index 3b3bbc9..666214d 100644 --- a/src/pages/InRoadMgm/PersonMgm/Performance/WorkerStat/loadable.jsx +++ b/src/pages/InRoadMgm/PersonMgm/Performance/WorkerStat/loadable.jsx @@ -9,7 +9,7 @@ import "./index.scss"; import { SearchOutlined, DeleteOutlined } from '@ant-design/icons'; import ajax from '@/services' let array = [] - +const { Column, ColumnGroup } = Table; function WorkerStat(props) { // const configData = props.sysConfig["lib-deploy"] || {}; const [ajaxLoading, setAjaxLoading] = useState(false) @@ -74,8 +74,7 @@ function WorkerStat(props) { //列表 const deployListColumns = [{ title: '商户名称', - dataIndex: 'operator', - key: 'operator' + }, { title: '登录名', @@ -88,35 +87,29 @@ function WorkerStat(props) { key: 'name', }, { - title: '实收金额', - dataIndex: 'today_sale', - key: 'today_sale', - }, - { - title: '追缴金额', - dataIndex: 'today_rate', - key: 'today_rate', + title: '营收金额', + dataIndex: 'revenue_amount', + key: 'revenue_amount', }, { - title: '应收金额', - dataIndex: 'today_receive', - key: 'today_receive', + title: '预付金额', + dataIndex: 'prepaid_amount', + key: 'prepaid_amount', }, { - title: '收费率', - dataIndex: 'sale_rate', - key: 'sale_rate', + title: 'PDA欠费追缴金额', + dataIndex: 'recovery_amount', + key: 'recovery_amount', }, { - title: '入场操作数', - dataIndex: 'entry_operation_records_count', - key: 'entry_operation_records_count', + title: '入场操作记录数', + dataIndex: 'in_num', + key: 'in_num', }, { - title: '出场操作数', - dataIndex: 'exit_operation_records_count', - key: 'exit_operation_records_count', - width: '120px', + title: '出场操作记录数', + dataIndex: 'out_num', + key: 'out_num', }] // 获取列表数据 const getData = (data = formData) => { @@ -150,9 +143,9 @@ function WorkerStat(props) { const changePn = (pn, length) => { if (lastFormData.page_size === length) { setFormData(Object.assign({}, formData, { pn: pn, page_size: length })) - setLastFormData(Object.assign({}, lastFormData, { pn: pn , page_size: length })) - lastFormDataRef.current = Object.assign({}, lastFormData, { pn: pn , page_size: length }) - getData(Object.assign({}, formData, { pn: pn , page_size: length })) + setLastFormData(Object.assign({}, lastFormData, { pn: pn, page_size: length })) + lastFormDataRef.current = Object.assign({}, lastFormData, { pn: pn, page_size: length }) + getData(Object.assign({}, formData, { pn: pn, page_size: length })) } } //切换每页条数 @@ -185,9 +178,9 @@ function WorkerStat(props) { setGetName(res.data) }) } - //导出 - const exportData=()=>{ - let data={ + //导出 + const exportData = () => { + let data = { ...formData } ajax.statExport(data).then(res => { @@ -290,17 +283,22 @@ function WorkerStat(props) {
共检索到{resultData.total_records}条结果 - record.cap_id + "_" + record.bk_id} - pagination={false} - loading={ajaxLoading} - /> +
+ + + + + + + + + + + + + + +
{ setShowEdit(true) + setGetEdit(false) setCurrentPersonId("") setTargetKeys([]) } @@ -441,9 +442,14 @@ function PersonInfo() { useEffect(() => { getAllOperator() + return () => setGetEdit(false) + // getPersonAllRoad() }, []) + useEffect(()=>{ + console.log(getEdit); + },[getEdit]) useEffect(() => { if (!showEdit) { setCurrentPersonInfo({ diff --git a/src/pages/InRoadMgm/RecordInquiry/ParkRecordTotal/loadable.jsx b/src/pages/InRoadMgm/RecordInquiry/ParkRecordTotal/loadable.jsx index 5036368..8235d30 100644 --- a/src/pages/InRoadMgm/RecordInquiry/ParkRecordTotal/loadable.jsx +++ b/src/pages/InRoadMgm/RecordInquiry/ParkRecordTotal/loadable.jsx @@ -775,7 +775,7 @@ function ParkRecordTotal() { { park_id: historyDataDetail.park_id, plate: historyDataDetail.plate, - park_name: historyDataDetail?.third_party_flow_id, + park_name: historyDataDetail?.road, in_time: historyDataDetail.in_time, admission_time: historyDataDetail?.out_time, }, @@ -785,7 +785,7 @@ function ParkRecordTotal() { /> - {historyDataDetail?.third_party_flow_id} + {historyDataDetail?.road} {historyDataDetail.region} @@ -902,7 +902,7 @@ function ParkRecordTotal() { >
{historyDataDetail.examine_time}
来源:平台
-
操作人:{historyDataDetail.examine_person}
+
操作人:{historyDataDetail.dealer}
diff --git a/src/pages/InRoadMgm/RoadMgm/ConfigRoad/loadable.jsx b/src/pages/InRoadMgm/RoadMgm/ConfigRoad/loadable.jsx index 30189de..5382c47 100644 --- a/src/pages/InRoadMgm/RoadMgm/ConfigRoad/loadable.jsx +++ b/src/pages/InRoadMgm/RoadMgm/ConfigRoad/loadable.jsx @@ -47,6 +47,7 @@ import { TreeSelectGroup, } from "@/components"; import "./index.scss"; +import { getToken } from "@/config/cookie"; import { useSetState, useSessionStorageState, useUpdateEffect } from "ahooks"; const { TextArea } = Input; @@ -57,6 +58,7 @@ function ConfigRoad() { const parking_id = location.search.split("=")[1].split("&")[0]; const operator_id = location.search.split("&")[1].split("=")[1]; const region_id = location.search.split("&")[2].split("=")[1]; + const [modalBtnLoading,setModalBtnLoading] = useState(false) //泊位管理Form const [berthForm] = Form.useForm(); const [dataForm] = Form.useForm(); @@ -66,8 +68,8 @@ function ConfigRoad() { const [getIdValue, setGetIdValue] = useState({}) //计费规则添加弹窗的泊位选择框 const [showBerthSelect, setShowBerthSelect] = useState(false); - //编辑杆位 - const [editTitle,setEditTitle]=useState(false) + //编辑杆位 + const [editTitle,setEditTitle]=useState(false) const berthManage = { form: [ { @@ -242,10 +244,13 @@ function ConfigRoad() { video_content: "", }, exporturl: "/api/bpm/berth/export", - downloadUrl: "", + downloadUrl: "api/bpm/berth/berth_import_template", importProps: { name: "file", action: "/PMS/api/bpm/berth/import", + headers: { + Authorization: getToken(), + }, onChange(info) { if (info.file.status !== "uploading") { console.log(info.file, info.fileList); @@ -455,6 +460,9 @@ function ConfigRoad() { importProps: { name: "file", data: { road_id: parking_id }, + headers: { + Authorization: getToken(), + }, action: "/PMS/api/bpm/device/import_device", onChange(info) { if (info.file.status !== "uploading") { @@ -618,12 +626,15 @@ function ConfigRoad() { }, ], key: "id", - exporturl: "", + exporturl: "/api/bpm/device/export_pole_position", downloadUrl: "/api/bpm/device/pole_position_import_template", importProps: { name: "file", action: "/PMS/api/bpm/device/import_pole_position", data: { road_id: parking_id }, + headers: { + Authorization: getToken(), + }, onChange(info) { if (info.file.status !== "uploading") { console.log(info.file, info.fileList); @@ -751,6 +762,7 @@ function ConfigRoad() { { setCurRuleRecord(record); + console.log(record); ruleForm.setFieldsValue({ vehicle_type: record.vehicle_type, rule_id: record.rule_id, @@ -759,12 +771,14 @@ function ConfigRoad() { }); // setSelectedBerth(record.berth_ids.split(",").map(item => +item)) setRuleModal(true); + // setIsRuleEdit(true); if (record.berth_ids === '') { setShowBerthSelect(false); - setIsRuleEdit(true); - } else { - setShowBerthSelect(true); setIsRuleEdit(false); + + }else { + setShowBerthSelect(true); + setIsRuleEdit(true); } let data = { road_id: parking_id, @@ -1327,6 +1341,7 @@ function ConfigRoad() { } //数据采集设备管理提交接口 function handleDataAcquistionModal() { + setModalBtnLoading(true) function addDevice(res) { ajax .addDevice({ @@ -1336,6 +1351,7 @@ function ConfigRoad() { }) .then((res) => { if (res.status === 20000) { + setModalBtnLoading(false) message.success(res.message); setDataAcquistionModal({ ...dataAcquistionModal, @@ -1344,6 +1360,7 @@ function ConfigRoad() { formRef.current.getList(); } else { message.error(res.message); + setModalBtnLoading(false) } }); } @@ -1812,6 +1829,7 @@ function ConfigRoad() { { setImportGroup({ ...importGroup, visible: false }); }} @@ -2073,10 +2091,11 @@ function ConfigRoad() { {/* 计费规则添加弹窗 */} { setRuleModal(false); + setSelectedBerth([]); }} style={{ top: 2, @@ -2121,9 +2140,10 @@ function ConfigRoad() { { + console.log(e.target.value); if (e.target.value === 1) { + setShowBerthSelect(true); - } else { setShowBerthSelect(false); @@ -2141,7 +2161,7 @@ function ConfigRoad() { ]} /> - {showBerthSelect && isRuleEdit ? ( + {showBerthSelect ? ( { @@ -2214,7 +2234,7 @@ function ConfigRoad() { onCancel={() => { setEditPoleModal({ ...editPoleModal, visible: false }); }} - title="编辑杆位" + title={editTitle?"编辑杆位":"添加杆位"} onOk={submitPole} >
{ setDataAcquistionModal({ ...dataAcquistionModal, visible: false }); }} + confirmLoading={modalBtnLoading} destroyOnClose onOk={handleDataAcquistionModal} title={dataAcquistionModal.isEdit ? "编辑设备" : "添加设备"} diff --git a/src/pages/InRoadMgm/RoadMgm/ParkList/loadable.jsx b/src/pages/InRoadMgm/RoadMgm/ParkList/loadable.jsx index c6cd014..f8fc2e8 100644 --- a/src/pages/InRoadMgm/RoadMgm/ParkList/loadable.jsx +++ b/src/pages/InRoadMgm/RoadMgm/ParkList/loadable.jsx @@ -125,15 +125,15 @@ function ParkList() { ]; const [getMerchantDataName, setGetMerchantDataName] = useState([]) const merchantDataName = () => { - ajax.getOperator().then(res => { - let arr = res.data - let newArr = arr.slice(1) - setGetMerchantDataName(res.data) - }) + ajax.getOperator().then(res => { + let arr = res.data + let newArr = arr.slice(1) + setGetMerchantDataName(res.data) + }) } - useEffect(()=>{ + useEffect(() => { merchantDataName() - },[]) + }, []) //泊位类型 const berthOptions = [ { @@ -198,15 +198,16 @@ function ParkList() { function onShowSizeChange(pn, page_size) { setPageData({ pn, page_size }); + } function search(params) { - if(params){ + if (params) { setPageData({ pn: 1, page_size: 15 }) - }else{ + } else { const params = { ...searchForm.getFieldsValue(), ...pageData }; ajax.getBerthList(params).then((res) => { @@ -215,11 +216,14 @@ function ParkList() { total_records: res.data.total, data: res.data.list, }); + handleClick() } }); } } - + function handleClick() { + window.scrollTo(0, 0); +} //查询部分 function renderSearch(params) { return ( @@ -270,19 +274,19 @@ function ParkList() { function getParkingItem(plate) { ajax.getRecordList({ plate, order_type: 1 }).then((res) => { if (res.status === 20000) { - res.data.list.map(res=>{ + res.data.list.map(res => { setCurrentParkingItem(res); }) - }else{ + } else { message.error(res.message) } }); } -const reastBtn=()=>{ - searchForm.resetFields(); - search(); -} + const reastBtn = () => { + searchForm.resetFields(); + search(); + } useEffect(() => { search(); }, [pageData]); @@ -294,7 +298,7 @@ const reastBtn=()=>{ {renderSearch()}
-
@@ -317,6 +321,7 @@ const reastBtn=()=>{
{ /> - {berthItem.etc_status_name } + {berthItem.etc_status_name} {berthOptions[berthItem.berth_type]?.label} diff --git a/src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/AddParking.jsx b/src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/AddParking.jsx index a5222ae..fdc024d 100644 --- a/src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/AddParking.jsx +++ b/src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/AddParking.jsx @@ -44,6 +44,7 @@ function AddParking(props) { } }); const [lngLatVisible, setLngLatVisible] = useState(false); + const [topBerthNum, setTopBerthNum] = useState(); const [lngLat, setLngLat] = useState(() => { if (status === "add") return []; else { @@ -167,8 +168,12 @@ function AddParking(props) { cooperate_type, access_type, lng_lat, - area + area, + total_berth_number, + berth_number//返回一级泊位数和总泊位数 } = res.data; + let num = parseInt(total_berth_number) - parseInt(berth_number) + setTopBerthNum(num) let arr = [] arr.push(area) form.setFieldsValue({ @@ -179,7 +184,7 @@ function AddParking(props) { is_business, cooperate_type, access_type, - area_id:getAreaArr(areaList, area), + area_id: getAreaArr(areaList, area), }); setLngLat(lng_lat.split(",")); } @@ -212,11 +217,11 @@ function AddParking(props) { } //编辑配置信息接口 function editOutSegmentRoad(params) { - ajax.editOutSegmentRoad(params).then((res) => { + ajax.editOutSegmentRoad({ ...params, id: record.id }).then((res) => { if (res.status === 20000) { message.success("编辑成功"); close(); - location.reload(); + //location.reload(); } else { message.error(res.message); } @@ -237,6 +242,10 @@ function AddParking(props) { message.error('车场泊位数必须为数字!') return } + if (topBerthNum && parseFloat(total_berth_number) < topBerthNum) { + message.error('下级车场泊位数与一级车场泊位数之和不超过泊位总数!此处总车场泊位数不超过' + topBerthNum) + //return + } const params = { ...values, img: processImgData(fileList), diff --git a/src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/ConfigParking/BusinessParameterConfig.jsx b/src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/ConfigParking/BusinessParameterConfig.jsx index c144350..aecccd6 100644 --- a/src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/ConfigParking/BusinessParameterConfig.jsx +++ b/src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/ConfigParking/BusinessParameterConfig.jsx @@ -16,16 +16,37 @@ function BusinessParameterConfig(props) { ajax.getRoadServiceEdit(params).then((res) => { if (res.status === 20000) { message.success(res.message); - + }else{ + message.error("请填写完整!") } }); } useEffect(() => { - ajax.getRoadAllChild().then((res) => { + ajax.getRoadAllChild({ road_id: id }).then((res) => { if (res.status === 20000) { setChildList(res.data); } }); + ajax.getRoadServiceParameters({ road_id: id }).then((res) => { + // res = { + // "status": 20000, + // "message": "success", + // "data": { + // "id": "1777413854377155803", + // "road_id": "1777413807249260948", + // "unlicensed_vehicle": 1, + // "similar_plates": 0, + // "monthly_rental_car": 1, + // "military_police_vehicles": 0, + // "free_time": 30, + // "arrearage": 0, + // "road_bias": "0" + // } + // } + if (res.status === 20000) { + form.setFieldsValue({ ...res.data }) + } + }); }, []); return (
diff --git a/src/pages/SystemMgm/AdminMgm/loadable.jsx b/src/pages/SystemMgm/AdminMgm/loadable.jsx index c4f6fef..7cbd258 100644 --- a/src/pages/SystemMgm/AdminMgm/loadable.jsx +++ b/src/pages/SystemMgm/AdminMgm/loadable.jsx @@ -97,12 +97,18 @@ function AdminMgm(props) { setAddManage({ ...addManage, email: e.target.value }) }; //添加所属部门 + const [governmentStatus, setGovernmentStatus] = useState(true) const [getPartName, setGetPartName] = useState([]) - const handleDeptName = (v) => { + const handleDeptName = (v, selectedOptions) => { console.log(v); setGetRoleStatus(false) setAddManage({ ...addManage, deptName: v }) setGetPartName(v) + if (selectedOptions.length === 1) { + setGovernmentStatus(false) + } else { + setGovernmentStatus(true) + } }; const [getRoleStatus, setGetRoleStatus] = useState(true) //添加角色 @@ -125,8 +131,12 @@ function AdminMgm(props) { } }, [getPartName]) //添加管辖方式 + const [getAreaStatus, setGetAreaStatus] = useState(false) const handleGovernmentType = (v) => { setGetGovernment(v) + if (v === 1) { + setGetAreaStatus(true) + } setAddManage({ ...addManage, government_style: v }) } //添加管辖区域 @@ -207,6 +217,7 @@ function AdminMgm(props) { }) getData(formData) setGetRoleStatus(true) + setGetAreaStatus(false) } }) } @@ -347,6 +358,9 @@ function AdminMgm(props) { const [getGovernment, setGetGovernment] = useState({}) const handleGovernment = (v) => { setGetGovernment(v) + if (v === 1) { + setGetAreaStatus(true) + } setGetImg({ ...getImg, government_style: v }) } const [getGovernmentArea, setGetGovernmentArea] = useState([]) @@ -444,12 +458,14 @@ function AdminMgm(props) { messageRole: 0, failure_time: '' }) + setGetAreaStatus(false) } const cancelImg = () => { setEditVisible(false) setDepartVisible(false) setPasswordVisible(false) setGetRoleStatus(true) + setGetAreaStatus(false) } const addcancelImg = () => { setImgVisible(false) @@ -465,6 +481,7 @@ function AdminMgm(props) { messageRole: 0, failure_time: '' }) + setGetAreaStatus(false) } // 获取列表数据 const getData = (data = formData) => { @@ -518,6 +535,7 @@ function AdminMgm(props) { const editModal = () => { setEditVisible(false) setGetRoleStatus(true) + setGetAreaStatus(false) } //编辑提交 const placeEditBtn = () => { @@ -530,6 +548,7 @@ function AdminMgm(props) { setEditVisible(false) getData(formData) setGetRoleStatus(true) + setGetAreaStatus(false) } }) } @@ -746,6 +765,7 @@ function AdminMgm(props) { { setGetImg( Object.assign({}, getImg, { mobile: v.target.value }) @@ -921,12 +945,17 @@ function AdminMgm(props) { value={getImg.deptName} options={getPlateColor} changeOnSelect - onChange={(v) => { + onChange={(v, selectedOptions) => { setGetImg( Object.assign({}, getImg, { deptName: v }) ); setGetRoleStatus(false) setGetPartName(v) + if (selectedOptions.length === 1) { + setGovernmentStatus(false) + } else { + setGovernmentStatus(true) + } }} fieldNames={{ label: 'name', @@ -935,7 +964,7 @@ function AdminMgm(props) { }} />
-
+