Browse Source

fix():修改车辆信息,用户信息等页面样式

tags/PMS_Frontend_v1.0.6-develop
xingjx 1 year ago
parent
commit
155df4c911
  1. 25
      src/components/TableModule/index.jsx
  2. 22
      src/components/TableModule/index.scss
  3. 6
      src/pages/FinancialMgm/OrderInquiry/OrderChangeInquiry/index.scss
  4. 1164
      src/pages/FinancialMgm/OrderInquiry/ParkingOrderInquiry/index.jsx
  5. 323
      src/pages/FinancialMgm/OrderInquiry/ParkingOrderInquiry/index.scss
  6. 496
      src/pages/FinancialMgm/OrderInquiry/ReturnOrderInquiry/index.jsx
  7. 322
      src/pages/FinancialMgm/OrderInquiry/ReturnOrderInquiry/index.scss
  8. 158
      src/pages/InRoadMgm/PersonMgm/MesNotification/loadable.jsx
  9. 46
      src/pages/InRoadMgm/RecordInquiry/DisabledCarParkRecordTotal/index.scss
  10. 56
      src/pages/InRoadMgm/RecordInquiry/ParkRecordTotal/index.scss
  11. 7
      src/pages/OperationCenter/CarMgm/CarAuth/loadable.jsx
  12. 38
      src/pages/OperationCenter/CarMgm/CarInfo/index.scss
  13. 42
      src/pages/OperationCenter/CarMgm/CarInfo/loadable.jsx
  14. 38
      src/pages/OperationCenter/UserMgm/UserInfo/index.scss
  15. 114
      src/pages/OperationCenter/UserMgm/UserInfo/loadable.jsx
  16. 12
      src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/AddParking.jsx
  17. 3
      src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/ConfigParking/MSPages.jsx
  18. 1
      src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/loadable.jsx

25
src/components/TableModule/index.jsx

@ -36,7 +36,7 @@ const TableModule = forwardRef((props, ref) => {
columns = [], //
tableData = [], //table
formSearch = [], //
search = () => {}, //
search = () => { }, //
total = 0, //
initFormData = {}, //
exportUrl = "", //
@ -45,6 +45,7 @@ const TableModule = forwardRef((props, ref) => {
rightButtonGroup = [], //
otherData = {}, //
rowKey, //tablekey
userInfo = {},//
} = props;
const [searchForm] = Form.useForm();
const [tipForm] = Form.useForm();
@ -77,6 +78,7 @@ const TableModule = forwardRef((props, ref) => {
});
//
const [areaSelectedList, setAreaSelectedList] = useState([]);
const [toTime, setToTime] = useState(moment().subtract(3, 'days').startOf("day"));
//tip
const [tipModal, setTipModal] = useState({
visible: false,
@ -228,7 +230,7 @@ const TableModule = forwardRef((props, ref) => {
name={"start_time"}
key={"start_time"}
initialValue={
(item.defaultValue && item.defaultValue[0]) ||
toTime||(item.defaultValue && item.defaultValue[0]) ||
moment().startOf("day")
}
>
@ -247,6 +249,7 @@ const TableModule = forwardRef((props, ref) => {
>
<DatePicker showTime format={"YYYY-MM-DD HH:mm:ss"} />
</Form.Item>
{/* <div onClick={() => { setToTime(moment().subtract(7, 'days').startOf("day")) }}>昨天</div> */}
</>
);
break;
@ -381,7 +384,7 @@ const TableModule = forwardRef((props, ref) => {
{renderSearch()}
<div className="bottomBox">
<Button className="reset" onClick={reset}>
清空
重置
</Button>
<Button type="primary" className="submit" onClick={fetch}>
查询
@ -390,6 +393,20 @@ const TableModule = forwardRef((props, ref) => {
</div>
</div>
<div className="right-list">
{userInfo.all_user_count ?
<div className="total-wrapper">
<div className="total-item">
用户总量:<span>{userInfo.all_user_count} </span>
</div >
<div className="total-item">
身份认证总量:<span> {userInfo.auth_user_count}</span>
</div>
<div className="total-item">
绑定车辆会员数量:<span>{userInfo.total} </span>
</div>
</div>
: null}
<div className="total-row-wrapper">
<span className="number-wrapper">
<span className="letter">共查询到</span>
@ -461,7 +478,7 @@ const TableModule = forwardRef((props, ref) => {
);
});
function InputSelectGroup(params) {
const { onChange = () => {} } = params;
const { onChange = () => { } } = params;
const [timeType, setTimeType] = useState(1);
const [timeGroup, setTimeGroup] = useState({
start_time: moment().subtract(1, "day").format(),

22
src/components/TableModule/index.scss

@ -21,6 +21,23 @@ $color-primary: var(--color-primary);
}
}
.right-list {
.total-wrapper {
display: block;
.total-item {
display: inline-block;
opacity: 0.8;
font-family: Microsoft YaHei, Microsoft YaHei-Regular;
font-weight: 400;
text-align: left;
margin-right: 25px;
span {
font-family: Microsoft YaHei, Microsoft YaHei-Bold;
font-weight: 700;
text-align: left;
color: #ffffff;
}
}
}
height: calc(100% - 10px);
&::-webkit-scrollbar :hover {
width: 10px;
@ -174,6 +191,11 @@ $color-primary: var(--color-primary);
display: inline-block;
word-wrap: break-word;
white-space: normal;
opacity: 0.8;
font-size: 14px;
font-family: Microsoft YaHei, Microsoft YaHei-Regular;
font-weight: 400;
color: #eeeff1;
}
}
.ant-picker {

6
src/pages/FinancialMgm/OrderInquiry/OrderChangeInquiry/index.scss

@ -158,19 +158,19 @@ $color-primary : var(--color-primary);
.ant-table-thead {
th {
background: var(--color-table-header-bg) !important;
background: #616b83 !important;
}
}
.ant-table-tbody {
td {
background: var(--color-table-body-bg) !important;
background: #3E4557 !important;
border-bottom-color: var(--color-table-border-bottom-color);
}
tr:nth-child(even) {
td {
background: var(--color-table-body-bg-nth-child-even) !important;
background: #3E4557 !important;
}
}
}

1164
src/pages/FinancialMgm/OrderInquiry/ParkingOrderInquiry/index.jsx
File diff suppressed because it is too large
View File

323
src/pages/FinancialMgm/OrderInquiry/ParkingOrderInquiry/index.scss

@ -1,5 +1,320 @@
@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);
.ant-tabs-tabpane-hidden {
display: none;
}
.ant-tabs {
margin-bottom: 16px;
.ant-tabs-nav {
margin-bottom: 0 !important;
&::before {
border-bottom: 1px solid var(--color-card-line) !important;
}
}
.ant-tabs-nav-wrap {
width: 100%;
box-sizing: content-box;
.ant-tabs-nav-list {
width: 340px;
.ant-tabs-ink-bar {
height: 3px;
background-color: #00ccff;
}
.ant-tabs-tab {
flex: 1;
width: 100%;
display: flex;
justify-content: center;
padding-bottom: 10px;
text-align: center;
cursor: pointer;
font-size: 14px !important;
font-family: MicrosoftYaHei;
text-align: center;
letter-spacing: 0.7px;
}
.ant-tabs-tab-active {
div {
color: #00ccff;
}
}
}
}
}
.ant-input::-webkit-input-placeholder {
color: var(--color-placeholder);
}
.ant-input::-moz-placeholder {
color: var(--color-placeholder);
}
.ant-input:-ms-input-placeholder {
color: var(--color-placeholder);
}
.ant-input::placeholder {
color: var(--color-placeholder);
}
.ant-select-selection-placeholder {
color: var(--color-placeholder);
}
.ant-select-disabled.ant-select-single:not(.ant-select-customize-input)
.ant-select-selector {
background: var(--color-input-disabled-bg);
color: var(--color-placeholder);
}
.ant-select-disabled .ant-select-arrow {
color: var(--color-placeholder);
}
.ant-select-disabled.ant-select:not(.ant-select-customize-input)
.ant-select-selector {
background-color: var(--color-input-disabled-bg);
color: var(--color-input-disabled-color);
cursor: not-allowed;
}
.ant-select-multiple {
.ant-select-selector {
.ant-select-selection-item {
background-color: var(--color-bg-body);
border-color: var(--color-border);
.ant-select-selection-item-remove {
color: var(--color-text);
}
}
}
}
.ant-select-arrow {
color: var(--color-text);
}
.ant-select-clear {
border-radius: 50%;
}
.ant-select-dropdown-menu {
background-color: var(--color-input-bg);
.ant-select-dropdown-menu-item {
color: var(--color-text);
&.ant-select-dropdown-menu-item-active {
color: #fff;
// background-color: var(--radio-button-bg-checked);
}
&.ant-select-dropdown-menu-item-selected {
color: #fff;
// background-color: var(--radio-button-bg-checked);
}
&:hover {
color: #fff;
// background-color: var(--radio-button-bg-checked);
}
}
}
.ant-select-selector {
background-color: var(--color-search-list-item-bg) !important;
box-shadow: none !important;
border-radius: 4px;
color: var(--color-search-list-item-value);
border-color: var(--color-search-list-item-bd) !important;
}
.ant-select-selection {
background-color: var(--color-input-bg);
box-shadow: none;
color: var(--color-text);
// border-color:var(--checkable-tag-border);
}
.ant-form-horizontal .ant-form-item-label {
label {
display: inline-block;
word-wrap: break-word;
white-space: normal;
}
}
.ant-picker {
width: 100%;
background-color: var(--color-search-list-item-bg);
border-color: var(--color-border);
}
.yisa-table {
width: 100%;
.ant-table-thead {
th {
background: var(--color-table-header-bg) !important;
}
}
.ant-table-tbody {
td {
background: var(--color-table-body-bg) !important;
border-bottom-color: var(--color-table-border-bottom-color);
}
tr:nth-child(even) {
td {
background: var(--color-table-body-bg-nth-child-even) !important;
}
}
}
}
.base-ltc {
display: flex;
}
.ltc-img {
margin-right: 20px;
}
.ltc-box {
width: 100%;
.ltc-box-title {
font-size: 18px;
font-weight: bolder;
width: 100%;
white-space: nowrap;
overflow: hidden;
.text {
display: inline-block;
}
.line {
display: inline-block;
border: 1px dotted #607092;
width: inherit;
margin-bottom: 6px;
}
.ltc-icon {
width: 5px;
background: #0080db;
height: 19px;
display: inline-block;
margin-right: 10px;
}
.ltc-btn {
display: inline-block;
border: 1px solid;
border-radius: 5px;
margin: 0 10px;
width: 60px;
height: 35px;
line-height: 35px;
text-align: center;
background: #409eff;
color: #fff;
font-weight: 100;
cursor: pointer;
}
.ltc-cancel {
background: #fff;
color: #000;
}
}
.ltc-box-line {
border: 1px solid #e7e7e7;
margin: 8px 0;
}
.ltc-box-in {
margin-left: 20px;
.ant-descriptions {
margin-left: 20px;
}
}
.ltc-title {
margin: auto;
width: 50%;
text-align: center;
font-size: 18px;
font-weight: 600;
}
.ltc-content {
margin: auto;
padding: 20px;
.ltc-item {
font-size: 18px;
margin: 6px 0;
display: inline-block;
width: 470px;
.new-item {
display: inline-block;
width: 120px;
height: 32px;
background: rgba(150,161,192,0.24);
text-align: center;
}
.new-value {
display: inline-block;
width: 320px;
height: 32px;
text-align: center;
background: #3E4557;
box-shadow: 0px 3px 8px 0px rgba(0,0,0,0.12);
}
.ltc-item-input {
display: inline-block;
width: 200px;
}
div {
width: 150px;
}
}
}
.ltc-liuc {
display: flex;
margin-left: 200px;
.ltc-item {
display: flex;
.ltc-item-name {
margin: 6px 10px 0 10px;
color: #3f94df;
}
}
.ltc-work{
text-align: center;
.ltc-tips {
border: 3px solid #000;
text-align: center;
line-height: 27px;
height: 35px;
width: 35px;
border-radius: 28px;
margin: auto;
}
}
}
}
.distable {
.ant-pagination {
justify-self: center;
}
}
.eae-modal {
.eae-modal-title {
font-size: 18px;
font-weight: bolder;
.ltc-icon {
width: 5px;
background: #0080db;
height: 19px;
display: inline-block;
margin-right: 10px;
}
}
.eae-modal-item {
display: inline-block;
font-size: 16px;
}
}
.cc-container {
overflow: auto;
}
.back-btn {
position: absolute;
right: 50px;
border: 1px solid #bdbdbd;
border-radius: 5px;
width: 60px;
height: 35px;
line-height: 30px;
text-align: center;
background: #ffffff;
color: #000;
cursor: pointer;
z-index: 9999;
}

496
src/pages/FinancialMgm/OrderInquiry/ReturnOrderInquiry/index.jsx

@ -1,15 +1,491 @@
import React, { useState, useRef, useEffect } from "react";
// import { message, Pagination, Table, Space, Modal, } from "antd";
// import { dictionary, utils } from "@/config/common";
// import moment from 'moment'
// import { useSessionStorageState, useUpdateEffect, useSize, useUpdate } from 'ahooks';
// import ajax from "@/services"
// import { FormInput, FormSelect, OptionPanel, ResultPanel, FormSliderPicker, AreaCascader, ImgResize, ImgZoom, } from "@/components"
// import "./index.scss";
// import errorImg from "@/assets/images/layout/error.png"
// import { useLocation } from "react-router-dom";
import {
message,
Pagination,
Table,
Input,
Space,
Modal,
Button,
Select,
Tabs,
Descriptions,
Timeline
} from "antd";
import moment from "moment";
import ajax from '@/config/ajax.js'
import { TableModule } from "@/components";
import { dictionary } from "@/config/common.js";
import "./index.scss";
function ReturnOrderInquiry() {
return <div>ReturnOrderInquiry</div>
const [memberId, setMemberId] = useState()
//
const createCol = (label, name, type) => {
label.length == name.length ? null : console.log('参数缺失', name, label.length, name.length)
var arr = []
label?.map((item, index) => {
let cm = {
title: item,
dataIndex: name[index],
key: name[index],
align: "center",
}
switch (item) {
case "序号":
cm.render = (text, record, index) => index + 1
break
case "退款订单ID":
case "业务订单ID":
case "支付订单ID":
cm.render = (text) => (
<>
<a onClick={() => {
navigator.clipboard.writeText(`${text}`).then(() => { message.success("已复制到剪切板") });
}}>{text}</a>
</>
)
break
default: break
}
arr.push(cm)
})
var obj = {
title: "操作",
dataIndex: "operation",
key: "operation",
fixed: "right",
align: "center",
}
switch (type) {
case 2:
obj.render = (text, record) => (<>
<span type="primary" style={{ display: 'block', textAlign: 'center' }} onClick={() => {
setYcddData(record)
setDetailVisible(true)
}}>
<a>详情</a>
</span>
</>)
arr.push(obj)
break
case 6:
obj.render = (text, record) => (<>
<span type="primary" style={{ display: 'block', textAlign: 'center' }} onClick={() => {
setTkddVisible(true)
}}>
<a>详情</a>
</span>
</>)
arr.push(obj)
break
case 7:
obj.render = (text, record) => (<>
<span type="primary" style={{ display: 'block', textAlign: 'center' }} onClick={() => {
setTkddVisible(true)
}}>
<a>详情</a>
</span>
</>)
arr.push(obj)
break
case 8:
obj.render = (text, record) => (<>
<span type="primary" style={{ display: 'block', textAlign: 'center' }} onClick={() => {
refundSearch(record)
setTkddVisible(true)
}}>
<a>详情</a>
</span>
</>)
arr.push(obj)
break
default: break
}
return arr
}
//退
const formRefundSearch = [
{
name: "refund_id",
type: "Input",
label: "退款订单号",
placeholder: "请输入退款订单号",
},
{
name: "type",
type: "Select",
label: "业务订单类型",
options: dictionary.BusinessOrderType,
},
{
name: "park_id",
type: "Input",
label: "业务订单ID",
placeholder: "请输入业务订单ID",
},
{
name: "order_id",
type: "Input",
label: "支付订单ID",
placeholder: "请输入支付订单ID",
},
{
name: "state",
type: "Select",
label: "退款状态",
options: [
{
label: "全部",
value: 0,
},
{
label: "待确认",
value: 1,
},
{
label: "退款中",
value: 2,
},
{
label: "已完成",
value: 3,
},
{
label: "退款失败",
value: 4,
},
],
},
{
name: "reason",
type: "Select",
label: "退款原因",
options: [
{
label: "全部",
value: 0,
},
{
label: "异常订单处理",
value: 1,
},
{
label: "自动平单退款",
value: 2,
},
],
},
{
name: "flow_id",
type: "Input",
label: "渠道流水号",
placeholder: "请输入渠道流水号",
},
{
name: "timePeriod",
type: "RangePicker",
label: "时间段",
defaultTitle: ['退款时间', '至'],
defaultValue: [moment().subtract(1, "month"), moment()],
},
];
const [tag, setTag] = useState('1');
const [resultData, setResultData] = useState([])
const [baseData, setBaseData] = useState({
//car_type:2
img: ''
})
const [ycddData, setYcddData] = useState([])//
const [detailVisible, setDetailVisible] = useState(false);
const [timesVisible, setTimesVisible] = useState(false); //退
const [tkddVisible, setTkddVisible] = useState(false);
const [eaeVisible, setEaeVisible] = useState(false);//
const [bigpicVisible, setBigpicVisible] = useState(false);//
const [bqVisible, setBqVisible] = useState(false);//
const [bigPic, setBigPic] = useState();
const [total, setTotal] = useState(0);
const [tabKey, setTabKey] = useState("1");
function openModal(params) {
setDetailVisible(true);
}
//
function searchDetail(e) {
ajax({
url: "/api/ope/user/get_base_info",
type: "get",
data: { memberId: e.memberId },
}).then((res) => {
let { status, data, total } = res
if (status == 20000) {
setBaseData(data)
setTag('2')
} else {
message.error(res.message)
}
})
}
//
function searchOther(e) {
var url = ''
switch (tabKey) {
case "1":
url = ""
break
case "2":
url = "/api/bpm/record/get_record_list"//
break
case "3":
url = "/api/bpm/record/get_payment_list"//
break
case "4":
url = "/api/ope/record/get_recharge_list"//
break
case "5":
url = "/api/bpm/record/get_parking_arrears_list"//
break
case "6":
url = ""
break
case "7":
url = ""
break
case "8":
url = "/api/ope/record/get_refund_list"//退
break
default: break
}
if (tabKey == '5' && e && !e?.type) {
e.type = 1
}
ajax({
url: url,
type: "post",
data: { ...e, memberId: memberId, startTime: e?.start_time, endTime: e?.end_time },
}).then((res) => {
let { status, data, total } = res
if (status == 20000) {
if (data.list) {
setResultData(data.list)
setTotal(data.total)
} else {
setResultData(data)
setTotal(total)
}
} else {
setResultData([])
message.error(res.message)
}
})
}
//退
function refundSearch(e) {
ajax({
url: "/api/ope/record/get_refund_info",
type: "get",
data: { id: e.refund_id },
}).then((res) => {
let { status, data } = res
if (status == 20000) {
//setResultData(data)
setYcddData(data)
} else {
message.error(res.message)
}
})
}
//
function renderTable(columns, arr, dataSource, exportUrl) {
return (
<TableModule
columns={columns}
tableData={dataSource}
formSearch={arr}
total={total}
search={searchOther}
exportUrl={exportUrl}
rowKey={'id'}
/>
);
}
//退
const tkddModal = <div className="ltc-box">
<div className="ltc-box-title"><div className="text">退款订单:{ycddData?.refund_id}</div><div className="line"></div></div>
<div className="ltc-content">
<div className="ltc-item">
<div className="new-item">生成时间</div><div className="new-value">{ycddData?.refund_time || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">退款状态</div><div className="new-value">{ycddData.refund_state || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">支付渠道</div><div className="new-value">{ycddData.payment_channels || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">退款方式</div><div className="new-value">{ycddData.refund_type || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">应退实付金额</div><div className="new-value">{ycddData.refund_actual_amount || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">已退实付金额</div><div className="new-value">{ycddData.has_refund_actual_amount || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">应退优惠金额</div><div className="new-value">{ycddData.refund_discount_amount || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">已退优惠金额</div><div className="new-value">{ycddData.has_refund_discount_amount || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">退款尝试次数</div><div className="new-value">{ycddData.try_count || "--"}
{timesVisible ?
<a onClick={() => { setTimesVisible(false) }}>收起</a> :
<a onClick={() => { setTimesVisible(true) }}>查看</a>}
</div>
</div>
<div className="ltc-item">
<div className="new-item">最近尝试时间</div><div className="new-value">{ycddData.latest_try_time || "--"}</div>
</div>
</div>
{timesVisible ? <>
<div className="ltc-box-title"><div className="text">退款尝试详情</div><div className="line"></div></div>
{/* <Table
columns={formRefundColumns}
dataSource={ycddData.try_list}
scroll={{ x: 1000 }}
className="yisa-table"
pagination={false}
rowKey={(record) => record.id}
/> */}
</> :
<>
<div className="ltc-box-title"><div className="text">支付订单:{ycddData.order_id}</div><div className="line"></div></div>
<div className="ltc-content">
<div className="ltc-item">
<div className="new-item">平台商户</div><div className="new-value">{ycddData.payment_operator_name}</div>
</div>
<div className="ltc-item">
<div className="new-item">生成时间</div><div className="new-value">{ycddData.payment_create_time}</div>
</div>
<div className="ltc-item">
<div className="new-item">支付时间</div><div className="new-value">{ycddData.pay_time}</div>
</div>
<div className="ltc-item">
<div className="new-item">支付渠道</div><div className="new-value">{ycddData.payment_equipment}</div>
</div>
<div className="ltc-item">
<div className="new-item">优惠金额</div><div className="new-value">{ycddData.discount_amount}</div>
</div>
<div className="ltc-item">
<div className="new-item">支付应用</div><div className="new-value">{ycddData.payment_equipment}</div>
</div>
<div className="ltc-item">
<div className="new-item">实付金额</div><div className="new-value">{ycddData.paid_in_money}</div>
</div>
</div>
<div className="ltc-box-title"><div className="text">停车订单:{ycddData.park_record_id}</div><div className="line"></div></div>
<div className="ltc-box-title"><div className="text">车厂详情</div></div>
<div className="ltc-content">
<div className="ltc-item">
<div className="new-item">平台商户</div><div className="new-value">{ycddData.payment_operator_name}</div>
</div>
<div className="ltc-item">
<div className="new-item">停车场名称</div><div className="new-value">{ycddData?.road_name}</div>
</div>
<div className="ltc-item">
<div className="new-item">区域</div><div className="new-value">{ycddData.area_name}</div>
</div>
<div className="ltc-item">
<div className="new-item">商户名称</div><div className="new-value">{ycddData.park_operator_name}</div>
</div>
<div className="ltc-item">
<div className="new-item">泊位号</div><div className="new-value">{ycddData.berth_code}</div>
</div>
<div className="ltc-item">
<div className="new-item">车场类型</div><div className="new-value">{ycddData.road_type}</div>
</div>
</div>
<div className="ltc-box-title"><div className="text">车辆详情</div></div>
<div className="ltc-content">
<div className="ltc-item">
<div className="new-item">车牌号</div><div className="new-value">{ycddData.plate_number}</div>
</div>
<div className="ltc-item">
<div className="new-item">停车时长</div><div className="new-value">{ycddData.parking_duration}</div>
</div>
<div className="ltc-item">
<div className="new-item">入场时间</div><div className="new-value">{ycddData.in_time}</div>
</div>
<div className="ltc-item">
<div className="new-item">出场时间</div><div className="new-value">{ycddData.out_time}</div>
</div>
<div className="ltc-item">
<div className="new-item">入场记录来源</div><div className="new-value">{ycddData.inSource}</div>
</div>
<div className="ltc-item">
<div className="new-item">出场记录来源</div><div className="new-value">{ycddData.outSource}</div>
</div>
<div className="ltc-item">
<div className="new-item">证据图像</div><div className="new-value"><a onClick={() => { setEaeVisible(true) }}>查看</a></div>
</div>
</div>
</>}
</div>
useEffect(() => {
searchOther()
}, [tabKey])
return (
<>
{renderTable(
createCol(['序号', '最近尝试时间', '支付渠道', '应退实付(元)', '应退优惠(元)', '退款原因', '退款申请时间', '退款订单ID', '业务订单类型', '业务订单ID', '支付订单类型', '支付订单ID', '渠道流水号', '状态'],
['index', 'latest_try_time', 'payment_channels_name', 'refund_actual_amount', 'refund_discount_amount', 'reason', 'refund_time', 'payment_order_id', 'parking_type_name', 'park_record_id', 'payment_type_name', 'payment_order_id', 'flow_id', 'state_name'], 8),
formRefundSearch,
resultData
)}
<Modal
open={bigpicVisible}
width={1600}
title={'图片展示'}
className="eae-modal"
onCancel={() => {
setBigpicVisible(false);
}}
footer={false}
>
<div>
<div className="eae-modal-item">
<img src={bigPic} width={1500} />
</div>
</div>
</Modal>
<Modal
open={tkddVisible}
width={1500}
title={'订单详情'}
onCancel={() => {
setTkddVisible(false);
}}
footer={[
<Button key="back" onClick={() => {
setTkddVisible(false);
}}>
关闭窗口
</Button>]}
>
{tkddModal}
{/* {tabKey == '8' ? tkddModal : tabKey == '6' ? tckModal : tabKey == '7' ? cfkModal : null} */}
</Modal>
</>
);
}
export default ReturnOrderInquiry;

322
src/pages/FinancialMgm/OrderInquiry/ReturnOrderInquiry/index.scss

@ -1,5 +1,319 @@
@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);
.ant-tabs-tabpane-hidden {
display: none;
}
.ant-tabs {
margin-bottom: 16px;
.ant-tabs-nav {
margin-bottom: 0 !important;
&::before {
border-bottom: 1px solid var(--color-card-line) !important;
}
}
.ant-tabs-nav-wrap {
width: 100%;
box-sizing: content-box;
.ant-tabs-nav-list {
width: 340px;
.ant-tabs-ink-bar {
height: 3px;
background-color: #00ccff;
}
.ant-tabs-tab {
flex: 1;
width: 100%;
display: flex;
justify-content: center;
padding-bottom: 10px;
text-align: center;
cursor: pointer;
font-size: 14px !important;
font-family: MicrosoftYaHei;
text-align: center;
letter-spacing: 0.7px;
}
.ant-tabs-tab-active {
div {
color: #00ccff;
}
}
}
}
}
.ant-input::-webkit-input-placeholder {
color: var(--color-placeholder);
}
.ant-input::-moz-placeholder {
color: var(--color-placeholder);
}
.ant-input:-ms-input-placeholder {
color: var(--color-placeholder);
}
.ant-input::placeholder {
color: var(--color-placeholder);
}
.ant-select-selection-placeholder {
color: var(--color-placeholder);
}
.ant-select-disabled.ant-select-single:not(.ant-select-customize-input)
.ant-select-selector {
background: var(--color-input-disabled-bg);
color: var(--color-placeholder);
}
.ant-select-disabled .ant-select-arrow {
color: var(--color-placeholder);
}
.ant-select-disabled.ant-select:not(.ant-select-customize-input)
.ant-select-selector {
background-color: var(--color-input-disabled-bg);
color: var(--color-input-disabled-color);
cursor: not-allowed;
}
.ant-select-multiple {
.ant-select-selector {
.ant-select-selection-item {
background-color: var(--color-bg-body);
border-color: var(--color-border);
.ant-select-selection-item-remove {
color: var(--color-text);
}
}
}
}
.ant-select-arrow {
color: var(--color-text);
}
.ant-select-clear {
border-radius: 50%;
}
.ant-select-dropdown-menu {
background-color: var(--color-input-bg);
.ant-select-dropdown-menu-item {
color: var(--color-text);
&.ant-select-dropdown-menu-item-active {
color: #fff;
// background-color: var(--radio-button-bg-checked);
}
&.ant-select-dropdown-menu-item-selected {
color: #fff;
// background-color: var(--radio-button-bg-checked);
}
&:hover {
color: #fff;
// background-color: var(--radio-button-bg-checked);
}
}
}
.ant-select-selector {
background-color: var(--color-search-list-item-bg) !important;
box-shadow: none !important;
border-radius: 4px;
color: var(--color-search-list-item-value);
border-color: var(--color-search-list-item-bd) !important;
}
.ant-select-selection {
background-color: var(--color-input-bg);
box-shadow: none;
color: var(--color-text);
// border-color:var(--checkable-tag-border);
}
.ant-form-horizontal .ant-form-item-label {
label {
display: inline-block;
word-wrap: break-word;
white-space: normal;
}
}
.ant-picker {
width: 100%;
background-color: var(--color-search-list-item-bg);
border-color: var(--color-border);
}
.yisa-table {
width: 100%;
.ant-table-thead {
th {
background: var(--color-table-header-bg) !important;
}
}
.ant-table-tbody {
td {
background: var(--color-table-body-bg) !important;
border-bottom-color: var(--color-table-border-bottom-color);
}
tr:nth-child(even) {
td {
background: var(--color-table-body-bg-nth-child-even) !important;
}
}
}
}
.base-ltc {
display: flex;
}
.ltc-img {
margin: 38px 20px;
.ltc-item {
width: 140px;
height: 32px;
background: rgba(150, 161, 192, 0.24);
text-align: center;
line-height: 32px;
}
}
.ltc-box {
width: 100%;
.ltc-box-title {
font-size: 18px;
font-weight: bolder;
width: 100%;
white-space: nowrap;
overflow: hidden;
.text {
display: inline-block;
}
.line {
display: inline-block;
border: 1px dotted #607092;
width: inherit;
margin-bottom: 6px;
}
.ltc-icon {
width: 5px;
background: #0080db;
height: 19px;
display: inline-block;
margin-right: 10px;
}
.ltc-btn {
display: inline-block;
border: 1px solid;
border-radius: 5px;
margin: 0 10px;
width: 60px;
height: 35px;
line-height: 35px;
text-align: center;
background: #409eff;
color: #fff;
font-weight: 100;
cursor: pointer;
}
.ltc-cancel {
background: #fff;
color: #000;
}
}
.ltc-box-line {
border: 1px solid #e7e7e7;
margin: 8px 0;
}
.ltc-box-in {
margin-left: 20px;
.ant-descriptions {
margin-left: 20px;
}
}
.ltc-title {
margin: auto;
width: 50%;
text-align: center;
font-size: 18px;
font-weight: 600;
}
.ltc-content {
margin: auto;
padding: 20px;
.ltc-item {
font-size: 18px;
margin: 6px 0;
display: inline-block;
width: 470px;
.new-item {
display: inline-block;
width: 120px;
height: 32px;
background: rgba(150,161,192,0.24);
text-align: center;
}
.new-value {
display: inline-block;
width: 320px;
height: 32px;
text-align: center;
background: #3E4557;
box-shadow: 0px 3px 8px 0px rgba(0,0,0,0.12);
}
.ltc-item-input {
display: inline-block;
width: 200px;
}
div {
width: 150px;
}
}
.ltc-item-bind {
font-size: 18px;
margin: 10px 0;
display: block;
width: 900px;
.new-item-bind {
display: inline-block;
width: 400px;
}
.ltc-item-input {
display: inline-block;
width: 200px;
}
a {
margin-right: 20px;
}
}
}
}
.distable {
.ant-pagination {
justify-self: center;
}
}
.eae-modal {
.eae-modal-title {
font-size: 18px;
font-weight: bolder;
.ltc-icon {
width: 5px;
background: #0080db;
height: 19px;
display: inline-block;
margin-right: 10px;
}
}
.eae-modal-item {
display: inline-block;
font-size: 16px;
}
}
.cc-container {
overflow: auto;
}
.back-btn {
position: absolute;
right: 50px;
border: 1px solid #bdbdbd;
border-radius: 5px;
width: 60px;
height: 35px;
line-height: 30px;
text-align: center;
background: #ffffff;
color: #000;
cursor: pointer;
z-index: 9999;
}

158
src/pages/InRoadMgm/PersonMgm/MesNotification/loadable.jsx

@ -90,7 +90,6 @@ function loadable() {
page_size,
});
}
const initFormData = {}//
const handleChange = (value) => {
console.log(`selected ${value}`);
setSendData({ ...sendData, receiver_type: value })
@ -99,6 +98,7 @@ function loadable() {
maxLength: 50,
showCount: true,
};
const [total, setTotal] = useState([]);
const [mockData, setMockData] = useState([]);
const [formData, setFormData] = useState({
start: moment().subtract(1, "month").format("YYYY-MM-DD HH:mm:ss"),
@ -134,6 +134,16 @@ function loadable() {
console.log('Formatted Selected Time: ', dateString);
setFormData({ start: dateString[0], end: dateString[1] })
};
//退
const formSearch = [
{//13
name: "timePeriod",
type: "RangePicker",
label: "时间段",
defaultValue: [moment().startOf("day"), moment()],
defaultTitle: ['发送时间', '至']
},
];
function send() {
var arr = []
mockData.map((e) => {
@ -197,6 +207,7 @@ function loadable() {
let { status, data } = res
if (status == 20000) {
setResultData(data.list)
setTotal(data.total)
} else {
message.error(res.message)
}
@ -272,75 +283,84 @@ function loadable() {
<Button className="push search-btn colorReset" onClick={() => { setTag('1'); }}>取消</Button>
</div>
</div> :
<div>
<div className="search-box">
<div className="time">发送时间:
<div style={{ width: "400px", display: "inline-block" }}>
<RangePicker
showTime={{
format: "HH:mm:ss",
}}
defaultValue={[moment().subtract(1, "month"), moment()]}
format="YYYY-MM-DD HH:mm:ss"
onChange={onChangeTime}
/>
</div>
</div>
<div className="btn-box">
<Button
type="primary"
className="submit search-btn colorBtn"
onClick={() => search()}
>
</Button>
<Button className="push search-btn colorReset" onClick={() => {
setTag('2');
setSendData({
receiver_type: 1,//1,2,PDA3
receiver: '',//
receiver_id: '',//id
content: '',//
})
setSelectedKeys([])
setTargetKeys([])
}}>发送消息</Button>
</div>
// <div>
// <div className="search-box">
// <div className="time">:
// <div style={{ width: "400px", display: "inline-block" }}>
// <RangePicker
// showTime={{
// format: "HH:mm:ss",
// }}
// defaultValue={[moment().subtract(1, "month"), moment()]}
// format="YYYY-MM-DD HH:mm:ss"
// onChange={onChangeTime}
// />
// </div>
// </div>
// <div className="btn-box">
// <Button
// type="primary"
// className="submit search-btn colorBtn"
// onClick={() => search()}
// >
//
// </Button>
// <Button className="push search-btn colorReset" onClick={() => {
// setTag('2');
// setSendData({
// receiver_type: 1,//1,2,PDA3
// receiver: '',//
// receiver_id: '',//id
// content: '',//
// })
// setSelectedKeys([])
// setTargetKeys([])
// }}></Button>
// </div>
</div>
<div className="result-box right-list">
<ResultFlow
hasLoad={true}
loading={loading}
resultData={resultData}
message={"暂无数据"}
>
<div className="table-wrap">
<Table
// className="yisa-table"
columns={columns}
dataSource={resultData}
pagination={false}
// scroll={{ x: 1500 }}
/>
</div>
<div>
<Pagination
className="pagination-common"
showSizeChanger={true}
showQuickJumper={true}
// showTotal={() => ` ${total_records} `}
total={0}
current={pageData.pn}
pageSize={pageData.page_size}
pageSizeOptions={dictionary?.pageSizeOptions}
onChange={onShowSizeChange}
onShowSizeChange={onShowSizeChange}
/>
</div>
</ResultFlow>
</div>
</div>
// </div>
// <div className="result-box right-list">
// <ResultFlow
// hasLoad={true}
// loading={loading}
// resultData={resultData}
// message={""}
// >
// <div className="table-wrap">
// <Table
// // className="yisa-table"
// columns={columns}
// dataSource={resultData}
// pagination={false}
// // scroll={{ x: 1500 }}
// />
// </div>
// <div>
// <Pagination
// className="pagination-common"
// showSizeChanger={true}
// showQuickJumper={true}
// // showTotal={() => ` ${total_records} `}
// total={0}
// current={pageData.pn}
// pageSize={pageData.page_size}
// pageSizeOptions={dictionary?.pageSizeOptions}
// onChange={onShowSizeChange}
// onShowSizeChange={onShowSizeChange}
// />
// </div>
// </ResultFlow>
// </div>
// </div>
<TableModule
columns={columns}
tableData={resultData}
formSearch={formSearch}
total={total}
search={search}
//exportUrl={exportUrl}
rowKey={'id'}
/>
}
<Modal
open={sfyVisible}

46
src/pages/InRoadMgm/RecordInquiry/DisabledCarParkRecordTotal/index.scss

@ -161,28 +161,28 @@ $color-primary: var(--color-primary);
border-color: var(--color-border);
}
.yisa-table {
width: 100%;
.ant-table-thead {
th {
background: var(--color-table-header-bg) !important;
}
}
.ant-table-tbody {
td {
background: var(--color-table-body-bg) !important;
border-bottom-color: var(--color-table-border-bottom-color);
}
tr:nth-child(even) {
td {
background: var(--color-table-body-bg-nth-child-even) !important;
}
}
}
}
// .yisa-table {
// width: 100%;
// .ant-table-thead {
// th {
// background: var(--color-table-header-bg) !important;
// }
// }
// .ant-table-tbody {
// td {
// background: var(--color-table-body-bg) !important;
// border-bottom-color: var(--color-table-border-bottom-color);
// }
// tr:nth-child(even) {
// td {
// background: var(--color-table-body-bg-nth-child-even) !important;
// }
// }
// }
// }
.ltc-box {
.ltc-box-title {
@ -208,7 +208,7 @@ $color-primary: var(--color-primary);
.ltc-content {
margin: auto;
width: 60%;
//width: 60%;
padding: 20px;
.ltc-item {

56
src/pages/InRoadMgm/RecordInquiry/ParkRecordTotal/index.scss

@ -171,31 +171,31 @@ $color-primary: var(--color-primary);
border-color: var(--color-border);
}
.yisa-table {
width: 100%;
.ant-table-thead {
th {
background: var(--color-table-header-bg) !important;
}
}
.ant-table-tbody {
td {
background: var(--color-table-body-bg) !important;
border-bottom-color: var(--color-table-border-bottom-color);
}
tr:nth-child(even) {
td {
background: var(--color-table-body-bg-nth-child-even) !important;
}
}
tr:nth-child(odd) {
td {
background: var(--color-table-body-bg-nth-child-even) !important;
}
}
}
}
// .yisa-table {
// width: 100%;
// .ant-table-thead {
// th {
// background: var(--color-table-header-bg) !important;
// }
// }
// .ant-table-tbody {
// td {
// background: var(--color-table-body-bg) !important;
// border-bottom-color: var(--color-table-border-bottom-color);
// }
// tr:nth-child(even) {
// td {
// background: var(--color-table-body-bg-nth-child-even) !important;
// }
// }
// tr:nth-child(odd) {
// td {
// background: var(--color-table-body-bg-nth-child-even) !important;
// }
// }
// }
// }

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

@ -161,7 +161,7 @@ function CarAuth() {
let { status, data, total } = res
if (status == 20000) {
// setResultData(data)
// setTotal(total)
// setTotal(total)
setPassVisible(false)
setRefuseVisible(false)
setToText('')
@ -276,7 +276,6 @@ function CarAuth() {
>
<div className="table-wrap">
<Table
// className="yisa-table"
columns={columns}
dataSource={resultData}
pagination={false}
@ -288,8 +287,8 @@ function CarAuth() {
className="pagination-common"
showSizeChanger={true}
showQuickJumper={true}
// showTotal={() => ` ${total_records} `}
total={0}
//showTotal={() => ` ${total} `}
total={total}
current={pageData.pn}
pageSize={pageData.page_size}
pageSizeOptions={dictionary?.pageSizeOptions}

38
src/pages/OperationCenter/CarMgm/CarInfo/index.scss

@ -134,27 +134,27 @@ $color-primary: var(--color-primary);
background-color: var(--color-search-list-item-bg);
border-color: var(--color-border);
}
.yisa-table {
width: 100%;
// .yisa-table {
// width: 100%;
.ant-table-thead {
th {
background: var(--color-table-header-bg) !important;
}
}
// .ant-table-thead {
// th {
// background: var(--color-table-header-bg) !important;
// }
// }
.ant-table-tbody {
td {
background: var(--color-table-body-bg) !important;
border-bottom-color: var(--color-table-border-bottom-color);
}
tr:nth-child(even) {
td {
background: var(--color-table-body-bg-nth-child-even) !important;
}
}
}
}
// .ant-table-tbody {
// td {
// background: var(--color-table-body-bg) !important;
// border-bottom-color: var(--color-table-border-bottom-color);
// }
// tr:nth-child(even) {
// td {
// background: var(--color-table-body-bg-nth-child-even) !important;
// }
// }
// }
// }
.base-ltc {
display: flex;

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

@ -557,7 +557,7 @@ function CarInfo() {
ajax({
url: "/api/ope/car/get_base_info",
type: "get",
data: { carId: e?.carId||carId },
data: { carId: e?.carId || carId },
}).then((res) => {
let { status, data, total } = res
if (status == 20000) {
@ -570,7 +570,7 @@ function CarInfo() {
ajax({//
url: "/api/ope/car/get_bind_records",
type: "get",
data: { carId: e?.carId||carId },
data: { carId: e?.carId || carId },
}).then((res) => {
let { status, data, total } = res
if (status == 20000) {
@ -582,7 +582,7 @@ function CarInfo() {
ajax({//
url: "/api/ope/car/get_edit_records",
type: "get",
data: { carId: e?.carId||carId },
data: { carId: e?.carId || carId },
}).then((res) => {
let { status, data, total } = res
if (status == 20000) {
@ -676,7 +676,7 @@ function CarInfo() {
ajax({
url: "/api/ope/record/get_refund_info",
type: "get",
data: { id:e.refund_id },
data: { id: e.refund_id },
}).then((res) => {
let { status, data } = res
if (status == 20000) {
@ -783,22 +783,28 @@ function CarInfo() {
<div className="ltc-box-title"><div className="ltc-icon"></div>车辆归属信息</div>
<div className="ltc-content">
<div className="ltc-item">
车牌颜色{baseData.plate_color}
<div className="new-item">车牌颜色</div>
<div className="new-value">{baseData.plate_color || "--"}</div>
</div>
<div className="ltc-item">
车牌号:{baseData.plate_number}
<div className="new-item">车牌号:</div>
<div className="new-value">{baseData.plate_number || "--"}</div>
</div>
<div className="ltc-item">
绑定会员账户:{baseData.mobile}
<div className="new-item">绑定会员账户:</div>
<div className="new-value">{baseData.mobile || "--"}</div>
</div>
<div className="ltc-item">
认证状态:{baseData.authStateName}
<div className="new-item">认证状态:</div>
<div className="new-value"> {baseData.authStateName || "--"}</div>
</div>
<div className="ltc-item">
车牌归属地:{baseData.home_location}
<div className="new-item">车牌归属地:</div>
<div className="new-value"> {baseData.home_location || "--"}</div>
</div>
<div className="ltc-item">
创建时间:{baseData.create_time}
<div className="new-item">创建时间:</div>
<div className="new-value">{baseData.create_time || "--"}</div>
</div>
</div>
<div className="ltc-box-title">
@ -813,16 +819,19 @@ function CarInfo() {
</div>
<div className="ltc-content">
<div className="ltc-item">
车辆品牌<Input className="ltc-item-input" value={baseData.car_brand} onChange={(e) => { console.log(e); setBaseData({ ...baseData, car_brand: e.target.value }) }} placeholder="请输入车辆品牌" disabled={edit}></Input>
<div className="new-item">车辆品牌</div>
<Input className="ltc-item-input" value={baseData.car_brand} onChange={(e) => { console.log(e); setBaseData({ ...baseData, car_brand: e.target.value }) }} placeholder="请输入车辆品牌" disabled={edit}></Input>
</div>
<div className="ltc-item">
车辆型号<Input className="ltc-item-input" value={baseData.car_model} placeholder="请输入车辆型号" disabled={edit}></Input>
<div className="new-item">车辆型号</div>
<Input className="ltc-item-input" value={baseData.car_model} placeholder="请输入车辆型号" disabled={edit}></Input>
</div>
<div className="ltc-item">
车身颜色<Input className="ltc-item-input" value={baseData.car_color} placeholder="请输入车身颜色" disabled={edit}></Input>
<div className="new-item">车身颜色</div>
<Input className="ltc-item-input" value={baseData.car_color} placeholder="请输入车身颜色" disabled={edit}></Input>
</div>
<div className="ltc-item">
车辆类型
<div className="new-item"> 车辆类型</div>
<Select
disabled={edit}
defaultValue={baseData.car_type}
@ -866,6 +875,7 @@ function CarInfo() {
scroll={{ x: 1000 }}
// className="yisa-table"
pagination={false}
rowKey={(record) => record.id}
/>
</div>
<div className="ltc-box-title"><div className="ltc-icon"></div>车辆信息修改记录</div>
@ -875,6 +885,7 @@ function CarInfo() {
scroll={{ x: 1000 }}
// className="yisa-table"
pagination={false}
rowKey={(record) => record.id}
/>
</div>
</div>
@ -889,6 +900,7 @@ function CarInfo() {
formSearch={arr}
total={total}
search={searchOther}
rowKey={(record) => record.id}
/>
);
}
@ -941,6 +953,7 @@ function CarInfo() {
scroll={{ x: 1000 }}
// className="yisa-table"
pagination={false}
rowKey={(record) => record.id}
/> </> :
<>
<div className="ltc-box-title"><div className="text">支付订单:{ycddData.order_id}</div><div className="line"></div></div>
@ -1080,6 +1093,7 @@ function CarInfo() {
formSearch={formSearch}
total={total}
search={search}
rowKey={(record) => record.id}
/> :
<>
<div className="back-btn" onClick={() => { setTag('1') }}>返回</div>

38
src/pages/OperationCenter/UserMgm/UserInfo/index.scss

@ -134,27 +134,27 @@ $color-primary: var(--color-primary);
background-color: var(--color-search-list-item-bg);
border-color: var(--color-border);
}
.yisa-table {
width: 100%;
// .yisa-table {
// width: 100%;
.ant-table-thead {
th {
background: var(--color-table-header-bg) !important;
}
}
// .ant-table-thead {
// th {
// background: var(--color-table-header-bg) !important;
// }
// }
.ant-table-tbody {
td {
background: var(--color-table-body-bg) !important;
border-bottom-color: var(--color-table-border-bottom-color);
}
tr:nth-child(even) {
td {
background: var(--color-table-body-bg-nth-child-even) !important;
}
}
}
}
// .ant-table-tbody {
// td {
// background: var(--color-table-body-bg) !important;
// border-bottom-color: var(--color-table-border-bottom-color);
// }
// tr:nth-child(even) {
// td {
// background: var(--color-table-body-bg-nth-child-even) !important;
// }
// }
// }
// }
.base-ltc {
display: flex;
}

114
src/pages/OperationCenter/UserMgm/UserInfo/loadable.jsx

@ -510,6 +510,49 @@ function UserInfo() {
label: "车牌号",
placeholder: "请输入车牌号",
},
{//20
name: "order_id",
type: "Input",
label: "支付订单ID",
placeholder: "请输入支付订单ID",
},
{//21
name: "t",
type: "Input",
label: "泊位号",
placeholder: "请输入泊位号",
},
{//22
name: "t",
type: "Select",
label: "所属商户",
placeholder: "请选择所属商户",
options: dictionary.PaydMethod,
},
{//23
name: "t",
type: "Input",
label: "预付订单ID",
placeholder: "请输入订单ID",
},
{//24
name: "t",
type: "Input",
label: "停车记录ID",
placeholder: "停车记录ID",
},
{//25
name: "t",
type: "Input",
label: "操作人",
placeholder: "请输入操作人",
},
{//26
name: "t",
type: "Input",
label: "停车订单ID",
placeholder: "停车订单ID",
},
];
const [tag, setTag] = useState('1');
const [edit, setEdit] = useState(true);
@ -517,7 +560,7 @@ function UserInfo() {
const [resultData, setResultData] = useState([])
const [baseData, setBaseData] = useState({
//car_type:2
img:''
img: ''
})
const [bindData, setBindData] = useState([])//
const [detailData, setDetailData] = useState([])//
@ -603,7 +646,7 @@ function UserInfo() {
ajax({//
url: "/api/ope/user/get_bind_car",
type: "get",
data: { memberId: e?.memberId||memberId },
data: { memberId: e?.memberId || memberId },
}).then((res) => {
let { status, data, total } = res
if (status == 20000) {
@ -642,7 +685,7 @@ function UserInfo() {
url = "/api/bpm/record/get_payment_list"//
break
case "4":
url = ""
url = "/api/ope/record/get_recharge_list"//
break
case "5":
url = "/api/bpm/record/get_parking_arrears_list"//
@ -686,7 +729,7 @@ function UserInfo() {
ajax({
url: "/api/ope/record/get_refund_info",
type: "get",
data: { id:e.refund_id },
data: { id: e.refund_id },
}).then((res) => {
let { status, data } = res
if (status == 20000) {
@ -787,7 +830,7 @@ function UserInfo() {
<div style={{ padding: '18px', background: '#505A6F' }}>
<div className="base-ltc">
<div className="ltc-img">
<img src={baseData?.img|| require("./error.png")} width={140} height={140}/>
<img src={baseData?.img || require("./error.png")} width={140} height={140} />
<div className="ltc-item">
<div className="new-value">用户头像</div>
</div>
@ -796,52 +839,52 @@ function UserInfo() {
<div className="ltc-content">
<div className="ltc-item">
<div className="new-item">昵称</div>
<div className="new-value">{baseData.nickName|| "--"}</div>
<div className="new-value">{baseData.nickName || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">性别</div><div className="new-value">{baseData.sex|| "--"}</div>
<div className="new-item">性别</div><div className="new-value">{baseData.sex || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">手机号</div><div className="new-value">{baseData.mobile|| "--"}</div>
<div className="new-item">手机号</div><div className="new-value">{baseData.mobile || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">年龄</div><div className="new-value">{baseData.authStateName|| "--"}</div>
<div className="new-item">年龄</div><div className="new-value">{baseData.authStateName || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">出生日期</div><div className="new-value">{baseData.home_location|| "--"}</div>
<div className="new-item">出生日期</div><div className="new-value">{baseData.home_location || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">区域</div><div className="new-value">{baseData.area|| "--"}</div>
<div className="new-item">区域</div><div className="new-value">{baseData.area || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">身份证号</div><div className="new-value">{baseData.id_card|| "--"}</div>
<div className="new-item">身份证号</div><div className="new-value">{baseData.id_card || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">姓名</div><div className="new-value">{baseData.name|| "--"}</div>
<div className="new-item">姓名</div><div className="new-value">{baseData.name || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">职业</div><div className="new-value">{baseData.job|| "--"}</div>
<div className="new-item">职业</div><div className="new-value">{baseData.job || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">用户ID</div><div className="new-value">{baseData.memberId|| "--"}</div>
<div className="new-item">用户ID</div><div className="new-value">{baseData.memberId || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">微信ID</div><div className="new-value">{baseData.wechatAuthid|| "--"}</div>
<div className="new-item">微信ID</div><div className="new-value">{baseData.wechatAuthid || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">支付宝ID</div><div className="new-value">{baseData.alipayAuthid|| "--"}</div>
<div className="new-item">支付宝ID</div><div className="new-value">{baseData.alipayAuthid || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">苹果ID</div><div className="new-value">{baseData.appleAuthid|| "--"}</div>
<div className="new-item">苹果ID</div><div className="new-value">{baseData.appleAuthid || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">会员标签</div><div className="new-value">{baseData.create_time|| "--"}</div>
<div className="new-item">会员标签</div><div className="new-value">{baseData.create_time || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">会员等级</div><div className="new-value">{baseData.memberLevel|| "--"}</div>
<div className="new-item">会员等级</div><div className="new-value">{baseData.memberLevel || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">信用等级</div><div className="new-value">{baseData.creditLevel|| "--"}</div>
<div className="new-item">信用等级</div><div className="new-value">{baseData.creditLevel || "--"}</div>
</div>
</div>
</div >
@ -850,16 +893,16 @@ function UserInfo() {
<div className="ltc-box-title"><div className="ltc-icon"></div>用户信息</div>
<div className="ltc-content">
<div className="ltc-item">
<div className="new-item">账户余额</div><div className="new-value">{baseData.balance|| "--"}</div>
<div className="new-item">账户余额</div><div className="new-value">{baseData.balance || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">注册时间</div><div className="new-value">{baseData.create_time|| "--"}</div>
<div className="new-item">注册时间</div><div className="new-value">{baseData.create_time || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item"> APP版本</div><div className="new-value">{baseData.appVersion|| "--"}</div>
<div className="new-item"> APP版本</div><div className="new-value">{baseData.appVersion || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">操作系统</div><div className="new-value">{baseData.deviceType|| "--"}</div>
<div className="new-item">操作系统</div><div className="new-value">{baseData.deviceType || "--"}</div>
</div>
</div>
@ -893,7 +936,7 @@ function UserInfo() {
);
}
//
function renderTable(columns, arr, dataSource) {
function renderTable(columns, arr, dataSource ,exportUrl) {
return (
<TableModule
columns={columns}
@ -901,6 +944,8 @@ function UserInfo() {
formSearch={arr}
total={total}
search={searchOther}
exportUrl={exportUrl}
rowKey={'id'}
/>
);
}
@ -913,6 +958,7 @@ function UserInfo() {
dataSource={dataSource}
scroll={{ x: 1000 }}
className="yisa-table distable"
rowKey={(record) => record.id}
/>
);
}
@ -957,13 +1003,15 @@ function UserInfo() {
</div>
{timesVisible ? <>
<div className="ltc-box-title"><div className="text">退款尝试详情</div><div className="line"></div></div>
<Table
{/* <Table
columns={formRefundColumns}
dataSource={ycddData.try_list}
scroll={{ x: 1000 }}
// className="yisa-table"
pagination={false}
/> </> :
rowKey={(record) => record.id}
/> */}
</> :
<>
<div className="ltc-box-title"><div className="text">支付订单:{ycddData.order_id}</div><div className="line"></div></div>
<div className="ltc-content">
@ -1048,15 +1096,14 @@ function UserInfo() {
<>
{tag == 1 ?
<>
<div>
用户总量:{resData.all_user_count} 身份认证总量:{resData.auth_user_count} 绑定车辆会员数量:{resData.total}
</div>
<TableModule
columns={columns}
tableData={resultData}
formSearch={formSearch}
total={total}
search={search}
userInfo= {resData}
rowKey={(record) => record.id}
/> </> :
<>
<div className="back-btn" onClick={() => { setTag('1') }}>返回</div>
@ -1083,9 +1130,10 @@ function UserInfo() {
<Tabs.TabPane tab="充值记录" key="4">
{renderTable(
createCol(['支付渠道', '充值金额', '支付日期'],
['merchantName', 'area', 'sectionName', 'licensePlateNumber', 'entryTime', 'exitTime', 'arrearsAmount'], 4),
['pay_type_name', 'pay_money', 'pay_time'], 4),
[ash[15], ash[9]],
resultData
resultData,
'/api/ope/record/recharge_export'
)}
</Tabs.TabPane>
<Tabs.TabPane tab="欠费记录" key="5">

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

@ -203,7 +203,7 @@ function AddParking(props) {
form
.validateFields()
.then((values) => {
console.log(values.area_id);
console.log(11111111,values.filings_time,values.filings_time.format('YYYY-MM-DD'),record);
let arrStr =values.area_id
let arr = arrStr[arrStr.length-1]
const params = {
@ -211,10 +211,12 @@ function AddParking(props) {
img: processImgData(fileList),
lng_lat: lngLat.join(","),
open_time: [
moment(record.open_begin_time).format("HH:mm:ss"),
moment(record.open_end_time ).format("HH:mm:ss"),
moment(values.open_begin_time).format("HH:mm:ss"),
moment(values.open_end_time ).format("HH:mm:ss"),
// record.open_begin_time,
// record.open_end_time
],
filings_time:moment(record.filings_time).format("HH:mm:ss"),
filings_time:moment(values.filings_time).format("YY-MM-DD"),
area_id:arr
};
console.log(values);
@ -632,7 +634,7 @@ function AddParking(props) {
</Col>
<Col span="4_8" style={{ width: "33%" }} name="filings_time">
<Form.Item label="备案时间" name="filings_time">
<DatePicker />
<DatePicker format="YYYY-MM-DD"/>
</Form.Item>
</Col>
<Col span={24}>

3
src/pages/OutRoadMgm/OutSegmentMgm/OutSegment/ConfigParking/MSPages.jsx

@ -3,6 +3,7 @@ import { Button, Table, Modal, Form, Input, message } from "antd";
import ajax from "@/services";
function MSPages(props) {
const { itemData = {} } = props;
console.log(1111,props)
const columns = [
{
title: "MS通信账号",
@ -76,7 +77,7 @@ function MSPages(props) {
};
useEffect(() => {
ajax.getRoadMs().then((res) => {
ajax.getRoadMs({id:itemData.id}).then((res) => {
if (res.status === 20000) {
console.log(res.data);
setDataSource([res.data]);

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

@ -497,6 +497,7 @@ function OutSegment() {
columns={columns}
dataSource={tableData}
pagination={false}
rowKey={(record)=>record.id}
/>
</div>
<div>

Loading…
Cancel
Save