Browse Source

fix():bug修改

tags/PMS_Frontend_v1.0.6-develop
xingjx 1 year ago
parent
commit
9be7a467d0
  1. 43
      src/components/TableModule/index.jsx
  2. 5
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/CarTypeAly/loadable.jsx
  3. 1
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkBerthAly/loadable.jsx
  4. 26
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkTurnoverAly/index.scss
  5. 5
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkTurnoverAly/loadable.jsx
  6. 26
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkUsageAly/index.scss
  7. 17
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkUsageAly/loadable.jsx
  8. 1
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkingAlyOverview/loadable.jsx
  9. 1
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkingLiveData/loadable.jsx
  10. 41
      src/pages/OperationCenter/ArrearsRecover/ArrearsCar/loadable.jsx
  11. 10
      src/pages/OperationCenter/CarMgm/CarAuth/index.scss
  12. 21
      src/pages/OperationCenter/CarMgm/CarAuth/loadable.jsx
  13. 23
      src/pages/OperationCenter/CarMgm/CarInfo/loadable.jsx
  14. 1
      src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/AddParking.jsx
  15. 9
      src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/Detail.jsx
  16. 7
      src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/loadable.jsx

43
src/components/TableModule/index.jsx

@ -199,7 +199,7 @@ const TableModule = forwardRef((props, ref) => {
//
function reset() {
searchForm.resetFields();
setFormData({...searchForm.getFieldsValue()})
setFormData({ ...searchForm.getFieldsValue() })
fetch()
}
function cascaderChange(value, options) {
@ -266,7 +266,7 @@ const TableModule = forwardRef((props, ref) => {
currentValue = value;
const fake = () => {
const str = {
plate: value,
plate_number: value,
};
ajax.getPlateSearch(str).then((res) => {
if (currentValue === value) {
@ -524,21 +524,21 @@ const TableModule = forwardRef((props, ref) => {
<DatePicker showTime format={"YYYY-MM-DD HH:mm:ss"} allowClear={false} />
</Form.Item>
<div style={{ margin: "-20px 0 10px 0" }}>
<QuickMenu
dropdownData={isQuickMenu.length > 0 ? isQuickMenu : [
{ text: '昨日', value: 1 },
{ text: '今日', value: 0 },
{ text: '近三日', value: 2 },
{ text: '近一周', value: 6 },
{ text: '近一月', value: 29 },
{ text: '近半年', value: 180 },
{ text: '近一年', value: 365 },
{ text: '近两年', value: 730 },
]}
onChange={(v) => {
//setDeftime(v);
toDeftime(v, item.defaultName)
}} />
<QuickMenu
dropdownData={isQuickMenu.length > 0 ? isQuickMenu : [
{ text: '昨日', value: 1 },
{ text: '今日', value: 0 },
{ text: '近三日', value: 2 },
{ text: '近一周', value: 6 },
{ text: '近一月', value: 29 },
{ text: '近半年', value: 180 },
{ text: '近一年', value: 365 },
{ text: '近两年', value: 730 },
]}
onChange={(v) => {
//setDeftime(v);
toDeftime(v, item.defaultName)
}} />
</div>
</>
@ -621,6 +621,10 @@ const TableModule = forwardRef((props, ref) => {
form.startTime = moment(form.start_time).format("YYYY-MM-DD HH:mm:ss");
form.endTime = moment(form.end_time).format("YYYY-MM-DD HH:mm:ss");
}
if (exportUrl == "/api/fin/order_search/arrears_order_update_list_export") { //--
form.deal_time_end = moment(form.deal_time_end).format("YYYY-MM-DD HH:mm:ss");
form.deal_time_start = moment(form.deal_time_start).format("YYYY-MM-DD HH:mm:ss");
}
}
exportAjax({
url: exportUrl,
@ -630,7 +634,7 @@ const TableModule = forwardRef((props, ref) => {
.then((res) => {
if (res.status === 20000) {
const link = document.createElement("a");
link.href = res.data.url;
link.href = res.data.url || res.data.export_url;
link.target = "_blank"; //
link.click();
setTipModal({ ...tipModal, visible: false });
@ -766,11 +770,12 @@ const TableModule = forwardRef((props, ref) => {
title="提示"
onOk={handleOk}
>
<Form form={tipForm}>
<Form.Item
label="文件名"
name="filename"
initialValue={tipModal.filename}
initialValue={pageName == 'arrearsCar' ? '欠费车辆' + moment().format('YYYYMMDDHHmmss') : tipModal.filename}
rules={[{ required: true }]}
>
<Input defaultValue={tipModal.filename} />

5
src/pages/DataAnalysisPrediction/ParkingBusinessAly/CarTypeAly/loadable.jsx

@ -175,7 +175,7 @@ function CarTypeAly() {
};
// 线
const getRevenueOption = (data) => {
if (!data) return
if (data || data.length <= 0) return
//
data.sort((a, b) => {
return new Date(a.date) - new Date(b.date);
@ -254,6 +254,9 @@ function CarTypeAly() {
getParkingOption(res.data.energy)
getCarTypeOption(res.data.car_type)
}
// else {
// message.error('')
// }
})
.catch((err) => console.error(err));
}

1
src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkBerthAly/loadable.jsx

@ -170,6 +170,7 @@ function ParkBerthAly() {
// "turnover": 8.75,
// },
// ]
if (data || data.length <= 0) return
//
data.sort((a, b) => {
return new Date(a.date) - new Date(b.date);

26
src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkTurnoverAly/index.scss

@ -258,3 +258,29 @@ $color-primary : var(--color-primary);
}
}
}
.edit-order-inquiry {
/*定义滚动条高宽及背景
高宽分别对应横竖滚动条的尺寸*/
::-webkit-scrollbar {
width: 6px;
height: 16px;
background-color: #5c5c5c;
}
/*定义滚动条轨道
内阴影+圆角*/
::-webkit-scrollbar-track {
-webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
border-radius: 10px;
background-color: #9da2ab;
}
/*定义滑块
内阴影+圆角*/
::-webkit-scrollbar-thumb {
border-radius: 10px;
-webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
background-color: #3b97ff;
}
}

5
src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkTurnoverAly/loadable.jsx

@ -155,8 +155,7 @@ function ParkTurnoverAly() {
};
//
const getRevenueOption = (data) => {
if(!data) return
console.log(data)
if (data || data.length <= 0) return
//
data.sort((a, b) => {
return new Date(a.date) - new Date(b.date);
@ -207,7 +206,7 @@ function ParkTurnoverAly() {
};
//
const getLineOption = (data) => {
if(!data) return
if (data || data.length <= 0) return
//
data.sort((a, b) => {
return new Date(a.date) - new Date(b.date);

26
src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkUsageAly/index.scss

@ -258,3 +258,29 @@ $color-primary : var(--color-primary);
}
}
}
.edit-order-inquiry {
/*定义滚动条高宽及背景
高宽分别对应横竖滚动条的尺寸*/
::-webkit-scrollbar {
width: 6px;
height: 16px;
background-color: #5c5c5c;
}
/*定义滚动条轨道
内阴影+圆角*/
::-webkit-scrollbar-track {
-webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
border-radius: 10px;
background-color: #9da2ab;
}
/*定义滑块
内阴影+圆角*/
::-webkit-scrollbar-thumb {
border-radius: 10px;
-webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
background-color: #3b97ff;
}
}

17
src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkUsageAly/loadable.jsx

@ -26,7 +26,7 @@ function ParkUsageAly() {
const defaultData = {
start_time: moment().subtract('days').startOf('day').format("YYYY-MM-DD"),
end_time: moment().endOf("day").format("YYYY-MM-DD"),
car_parking_type:'3',
car_parking_type: '3',
date_type: '1', //
};
//
@ -154,6 +154,7 @@ function ParkUsageAly() {
//线
const getRevenueOption = (data) => {
if (data || data.length <= 0) return
//
data.sort((a, b) => {
return new Date(a.date) - new Date(b.date);
@ -207,10 +208,24 @@ function ParkUsageAly() {
ajax
.getParkUsageAlyLine(data)
.then((res) => {
res = {
"status": 20000,
"message": "success",
"data": {
"list": [],
"total_records": 0
}
}
if (res.status === 20000) {
console.log(res)
getRevenueOption(res.data.list);
setResultData(res.data)
} else {
getRevenueOption([]);
setResultData({
total: 0,
list: [],
})
}
})
.catch((err) => console.error(err));

1
src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkingAlyOverview/loadable.jsx

@ -227,6 +227,7 @@ function ParkingAlyOverview() {
//线
const getRevenueOption = (data) => {
if (data || data.length <= 0) return
//
data.sort((a, b) => {
return new Date(a.date) - new Date(b.date);

1
src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkingLiveData/loadable.jsx

@ -142,6 +142,7 @@ function ParkingLiveData() {
};
//
const getLineOption = (data) => {
if (data || data.length <= 0) return
//
data.sort((a, b) => {
return new Date(a.hour) - new Date(b.hour);

41
src/pages/OperationCenter/ArrearsRecover/ArrearsCar/loadable.jsx

@ -318,7 +318,7 @@ function ArrearsCar() {
ajax({
url: "/api/ope/record/get_arrearage_car_info",
type: "get",
data: { carId: e||carId },
data: { carId: e || carId },
}).then((res) => {
let { status, data, total } = res
if (status == 20000) {
@ -329,8 +329,42 @@ function ArrearsCar() {
}
})
}
function isInteger(obj) {
return typeof obj === 'number' && obj % 1 === 0
}
//
const limitCon = (e) => {
if ((e.refund_amount_min && !e.refund_amount_max) || (!e.refund_amount_min && e.refund_amount_max)) {
alert('请将欠费金额范围写全!')
return 1
}
if (e && e.refund_amount_min) {
if (!(e && e.refund_amount_min == parseInt(e.refund_amount_min) && isInteger(parseInt(e.refund_amount_min))) || !(e && e.refund_amount_max == parseInt(e.refund_amount_max) && isInteger(parseInt(e.refund_amount_max)))) {
alert('欠费金额必须为整数!')
return 1
}
}
if (parseInt(e.refund_amount_min) > parseInt(e.refund_amount_max)) {
alert('欠费金额后面的数据必须大于前面的数据!')
return 1
}
if ((e.count_min && !e.count_max) || (!e.count_min && e.count_max)) {
alert('请将电话追缴范围写全!')
return 1
}
if (!(e && e.count_min == parseInt(e.count_min) && isInteger(parseInt(e.count_min))) || !(e && e.count_max == parseInt(e.count_max) && isInteger(parseInt(e.count_max)))) {
console.log(e.count_min)
alert('电话追缴必须为整数!')
return 1
}
if (parseInt(e.count_min) > parseInt(e.count_max)) {
alert('电话追缴后面的数据必须大于前面的数据!')
return 1
}
}
useEffect(() => {
if(carId){
if (carId) {
searchDetail()
}
}, [pageData]);
@ -343,7 +377,8 @@ function ArrearsCar() {
total={total}
search={search}
pageName={'arrearsCar'}
exportUrl={'http://192.168.5.149:90/PMS/api/bpm/record/get_record_export'}
limitCon={limitCon}
exportUrl={'/api/bpm/record/get_record_export'}
/>
<Modal
open={modalVisible}

10
src/pages/OperationCenter/CarMgm/CarAuth/index.scss

@ -21,8 +21,8 @@ $color-primary : var(--color-primary);
height: 35px;
line-height: 35px;
text-align: center;
background: #409eff;
color: #fff;
background: #ffffff;
color: #000000;
font-weight: 100;
cursor: pointer;
}
@ -241,3 +241,9 @@ $color-primary : var(--color-primary);
text-align: center;
font-weight: 800;
}
.eae-modal {
.eae-modal-item {
display: flex;
margin-left: 10px;
}
}

21
src/pages/OperationCenter/CarMgm/CarAuth/loadable.jsx

@ -197,7 +197,7 @@ function CarAuth() {
<div className="new-item">认证状态</div>
<div className="new-value">{resultData[indexby].auditState || "--"}</div>
</div>
{resultData[indexby].auditState == 1 || resultData[indexby].auditState == 4 ?
{resultData[indexby].auditState == '待审核' || resultData[indexby].auditState == '残疾车待审核' ?
<div className="ltc-item">
<div className="new-item">操作人</div>
<div className="new-value">{resultData[indexby].operator || "--"}</div>
@ -207,6 +207,13 @@ function CarAuth() {
<div className="new-value">{resultData[indexby].operate_time || "--"}</div>
</div>
}
{resultData[indexby].auditState == '已作废' || resultData[indexby].auditState == '残疾车已作废' ?
<div className="ltc-item">
<div className="new-item">拒审理由</div>
<div className="new-value">{resultData[indexby].text || "--"}</div>
</div>
:null
}
</div>
<div className="ltc-box-title"><div className="ltc-icon"></div>车辆认证信息</div>
@ -230,7 +237,7 @@ function CarAuth() {
{/* <img src={'https://ts1.cn.mm.bing.net/th/id/R-C.31df3a5a2d8462228734f95d459883e2?rik=7EE6TeWDk%2f%2bctQ&riu=http%3a%2f%2fwww.quazero.com%2fuploads%2fallimg%2f140303%2f1-140303214331.jpg&ehk=SpI7mz%2byLqOkT8BL79jcd3iCtQYNFlBHQzbtF1p0vuQ%3d&risl=&pid=ImgRaw&r=0'} onClick={() => { setBigPic(resultData[indexby].vehicle_travel_license_img1); setBigpicVisible(true) }} /> */}
</div>
<div className="ltc-item ltc-item-img">
<img src={resultData[indexby].vehicle_travel_license_img2 || require("../../../../../src/assets/images/error-img.png")} onClick={() => { setBigPic(resultData[indexby].vehicle_travel_license_img2); setBigpicVisible(true) }} />
<img src={"resultData[indexby].vehicle_travel_license_img2" || require("../../../../../src/assets/images/error-img.png")} onClick={() => { setBigPic(resultData[indexby].vehicle_travel_license_img2); setBigpicVisible(true) }} />
{/* <img src={'https://ts1.cn.mm.bing.net/th/id/R-C.31df3a5a2d8462228734f95d459883e2?rik=7EE6TeWDk%2f%2bctQ&riu=http%3a%2f%2fwww.quazero.com%2fuploads%2fallimg%2f140303%2f1-140303214331.jpg&ehk=SpI7mz%2byLqOkT8BL79jcd3iCtQYNFlBHQzbtF1p0vuQ%3d&risl=&pid=ImgRaw&r=0'} onClick={() => { setBigPic(resultData[indexby].vehicle_travel_license_img2); setBigpicVisible(true) }} /> */}
</div>
</div>
@ -246,10 +253,10 @@ function CarAuth() {
</div>
<div className="ltc-content">
<div className="ltc-item ltc-item-img">
<img src={resultData[indexby].driving_licence_img1} onClick={() => { setBigPic(resultData[indexby].driving_licence_img1); setBigpicVisible(true) }} />
<img src={resultData[indexby].driving_licence_img1 || require("../../../../../src/assets/images/error-img.png")} onClick={() => { setBigPic(resultData[indexby].driving_licence_img1); setBigpicVisible(true) }} />
</div>
<div className="ltc-item ltc-item-img">
<img src={resultData[indexby].driving_licence_img2} onClick={() => { setBigPic(resultData[indexby].driving_licence_img2); setBigpicVisible(true) }} />
<img src={resultData[indexby].driving_licence_img2 || require("../../../../../src/assets/images/error-img.png")} onClick={() => { setBigPic(resultData[indexby].driving_licence_img2); setBigpicVisible(true) }} />
</div>
</div>
<div className="ltc-content">
@ -268,10 +275,10 @@ function CarAuth() {
</div>
</> : null}
<div className="ltc-item ltc-item-img">
<img src={resultData[indexby].disabled_certificate_img1} onClick={() => { setBigPic(resultData[indexby].disabled_certificate_img1); setBigpicVisible(true) }} />
<img src={resultData[indexby].disabled_certificate_img1 || require("../../../../../src/assets/images/error-img.png")} onClick={() => { setBigPic(resultData[indexby].disabled_certificate_img1); setBigpicVisible(true) }} />
</div>
<div className="ltc-item ltc-item-img">
<img src={resultData[indexby].disabled_certificate_img2} onClick={() => { setBigPic(resultData[indexby].disabled_certificate_img2); setBigpicVisible(true) }} />
<img src={resultData[indexby].disabled_certificate_img2 || require("../../../../../src/assets/images/error-img.png")} onClick={() => { setBigPic(resultData[indexby].disabled_certificate_img2); setBigpicVisible(true) }} />
</div>
</div>
</div>
@ -401,7 +408,7 @@ function CarAuth() {
>
<div>
<div className="eae-modal-item">
请输入拒审理由
<div className="eae-text">请输入拒审理由</div>
<TextArea
placeholder="请输入"
value={formData.text}

23
src/pages/OperationCenter/CarMgm/CarInfo/loadable.jsx

@ -211,7 +211,7 @@ function CarInfo() {
options: [
{
label: "已认证",
value: 2 ,
value: 2,
},
{
label: "未认证",
@ -344,7 +344,7 @@ function CarInfo() {
},
{//3
name: "road",
type: "Input",
type: "SearchSelect",
label: "停车场名称",
placeholder: "请输入停车场名称",
},
@ -797,7 +797,7 @@ function CarInfo() {
<div style={{ padding: '18px' }}>
<div className="base-ltc">
<div className="ltc-img">
<img src={baseData.car_img} width={600} />
<img src={baseData.car_img || require("../../../../../src/assets/images/error-img.png")} width={600} />
</div>
<div className="ltc-box">
<div className="ltc-box-title"><div className="ltc-icon"></div>车辆归属信息</div>
@ -856,20 +856,7 @@ function CarInfo() {
disabled={edit}
defaultValue={baseData.car_type}
onChange={(v) => setBaseData({ ...baseData, car_type: v })}
options={[
{
label: "大型车",
value: 1,
},
{
label: "中型车",
value: 2,
},
{
label: "小型车",
value: 3,
},
]}
options={sysConfig.vehicleTypeNOAll}
placeholder={''}
/>
</div>
@ -877,7 +864,7 @@ function CarInfo() {
<div className="new-item">号牌类型</div>
<Select
disabled={edit}
options={dictionary.PlateType}
options={sysConfig.plateType}
fieldNames={{ label: 'text', value: 'value' }}
onChange={(v) => setBaseData({ ...baseData, plate_type: v })}
defaultValue={baseData?.plate_type}

1
src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/AddParking.jsx

@ -224,6 +224,7 @@ function AddParking(props) {
} else {
editOutSegmentRoad(params);
}
location.reload()
})
.catch((err) => console.error(err));
}

9
src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/Detail.jsx

@ -125,7 +125,7 @@ function ParkingContent(props) {
{roadInfo.physics_type}
</Descriptions.Item>
<Descriptions.Item label="独立车场泊位数">
{roadInfo.physics_type}
{roadInfo.berth_number}
</Descriptions.Item>
<Descriptions.Item label="区域">{roadInfo.area}</Descriptions.Item>
<Descriptions.Item label="所属商户">
@ -144,10 +144,10 @@ function ParkingContent(props) {
{roadInfo.open_time_range}
</Descriptions.Item>
<Descriptions.Item label="商用状态">
{roadInfo.is_business}
{roadInfo.operator_status}
</Descriptions.Item>
<Descriptions.Item label="车场状态">
{roadInfo.operator_status}
{roadInfo.status}
</Descriptions.Item>
<Descriptions.Item label="是否支持充电">
{roadInfo.recharge}
@ -161,6 +161,9 @@ function ParkingContent(props) {
<Descriptions.Item label="系统编码">
{roadInfo.system_code}
</Descriptions.Item>
<Descriptions.Item label="收费规则描述">
{roadInfo.billing_rules}
</Descriptions.Item>
</Descriptions>
</>
);

7
src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/loadable.jsx

@ -93,8 +93,8 @@ function OutSegment() {
},
{
title: "商户名称",
dataIndex: "operqator",
key: "operqator",
dataIndex: "operator",
key: "operator",
align: "center",
},
{
@ -386,7 +386,8 @@ function OutSegment() {
//
const configAppraise = () => {
let values = commentForm.getFieldsValue();
if (values.count.replace(/[^\d{1,}\.\d{1,}|\d{1,}]/g, '') == values.count || values.days.replace(/[^\d{1,}\.\d{1,}|\d{1,}]/g, '') == values.days) {
console.log(values)
if (values?.count?.toString().replace(/[^\d{1,}\.\d{1,}|\d{1,}]/g, '') == values.count || values?.days?.toString().replace(/[^\d{1,}\.\d{1,}|\d{1,}]/g, '') == values.days) {
ajax.commentSetting(values).then((res) => {
if (res.status === 20000) {
message.success("配置成功");

Loading…
Cancel
Save