Browse Source

Merge branch 'develop' of http://120.27.195.166:3000/chenglb/PMS_Frontend_v1.0.0 into develop

tags/PMS_Frontend_v1.0.6-develop
wanghx 1 year ago
parent
commit
9e4445ad44
  1. 1
      package.json
  2. 48
      src/pages/DataAnalysisPrediction/EquipmentAly/EquipmentRunningStat/index.scss
  3. 189
      src/pages/DataAnalysisPrediction/EquipmentAly/EquipmentRunningStat/loadable.jsx
  4. 16
      src/pages/DataAnalysisPrediction/MemberStat/RegisterAly/loadable.jsx
  5. 45
      src/pages/DataAnalysisPrediction/ParkingOverview/index.scss
  6. 1016
      src/pages/DataAnalysisPrediction/ParkingOverview/loadable.jsx
  7. 2
      src/pages/FinancialMgm/FinancialReport/OperationReport/loadable.jsx
  8. 77
      src/pages/FinancialMgm/FinancialReport/ParkCardReport/loadable.jsx
  9. 2
      src/pages/FinancialMgm/FinancialReport/ParkingIncomeReport/loadable.jsx
  10. 104
      src/pages/FinancialMgm/FinancialReport/PreOrderReport/loadable.jsx
  11. 49
      src/services/ElectInvoice/index.js
  12. 26
      src/services/ParkingOverview/index.js

1
package.json

@ -68,6 +68,7 @@
"copy-to-clipboard": "^3.3.3",
"crypto-js": "^4.1.1",
"echarts-for-react": "^3.0.2",
"echarts-gl": "^2.0.9",
"express": "^4.17.3",
"js-cookie": "^3.0.1",
"leaflet": "^1.4.0",

48
src/pages/DataAnalysisPrediction/EquipmentAly/EquipmentRunningStat/index.scss

@ -307,4 +307,52 @@ $color-primary : var(--color-primary);
font-size: 14px;
color: $color-text;
}
.modal-invoic {
.tem {
display: flex;
align-items: center;
padding: 0 10px 16px 0;
.lab {
width: 90px;
margin-right: 10px;
i {
color: red;
}
}
.inputs {
width: 120px;
}
}
.submitBtn {
text-align: center;
margin-top: 20px;
.ant-btn {
width: 80px;
height: 35px;
border: none;
border-radius: 4px;
line-height: 27px;
color: #ffffff;
}
.submit {
background: #409eff;
}
.cancel {
background: var(--button-default-bg);
margin-left: 20px;
}
}
}

189
src/pages/DataAnalysisPrediction/EquipmentAly/EquipmentRunningStat/loadable.jsx

@ -10,18 +10,13 @@ import {
AutoComplete,
Tooltip,
Checkbox,
Modal,
Form,
DatePicker,
} from "antd";
import { dictionary, utils } from "@/config/common";
import moment from "moment";
import {
FunnelPlotOutlined,
CloseOutlined,
InfoCircleOutlined,
DownOutlined,
UpOutlined,
} from "@ant-design/icons";
import ajax from "@/services";
// import { useSessionStorageState, useUpdateEffect, useSize, useUpdate } from 'ahooks';
import { ResultFlow } from "@/components";
@ -35,16 +30,15 @@ import Equip5 from "@/assets/images/equip/equip5.png";
const { RangePicker } = DatePicker;
const { TextArea } = Input;
function ExceptionParkReport() {
const [tipForm] = Form.useForm();
const formdata = {
operator_id: "0", //
name: "", //
park_type: "", // 1= 2=
operator_status: [], //(1线234线)
area: [],
parkName: "", //
parkType: "", // 1= 2=
area_id: ["0"],
date_type: "1",
is_excel: 0,
start_time: moment().startOf("day").format("YYYY-MM-DD"),
end_time: moment().endOf("day").format("YYYY-MM-DD"),
start_date: moment().startOf("day").format("YYYY-MM-DD"),
end_date: moment().endOf("day").format("YYYY-MM-DD"),
pn: 1,
page_size: dictionary?.pageSizeOptions1[0],
};
@ -52,30 +46,30 @@ function ExceptionParkReport() {
const tabt = [
{
text: "设备总数(个)",
value: 4642,
value: "deviceTotal",
icon: Equip1,
},
{
text: "离线次数(次)",
value: 1,
value: "offlineTimes",
icon: Equip2,
tip: "离线时间大于20分钟,记为1次离线,连续离线不会记多次",
},
{
text: "离线总时长",
value: "32天20时49分0秒",
value: "offlineDuration",
icon: Equip3,
},
{
text: "离线时长占比",
value: "99.58%",
value: "offlineDurationRate",
icon: Equip4,
tip: "离线设备总时长/离线设备工作时长*100%",
},
{
text: "离线时长占比",
subtext: "(全部设备)",
value: "0.71%",
value: "offlineDurationRateTotal",
icon: Equip5,
tip: "离线设备总时长/全区所有设备工作时长*100%",
},
@ -84,38 +78,38 @@ function ExceptionParkReport() {
const col = [
{
title: "车场名称",
dataIndex: "road_name",
key: "road_name",
dataIndex: "parkName",
key: "parkName",
align: "center",
},
{
title: "设备总数",
dataIndex: "date",
key: "date",
dataIndex: "deviceTotal",
key: "deviceTotal",
align: "center",
},
{
title: "离线次数",
dataIndex: "date",
key: "date",
dataIndex: "offlineTimes",
key: "offlineTimes",
align: "center",
},
{
title: "离线总时长",
dataIndex: "date",
key: "date",
dataIndex: "offlineDuration",
key: "offlineDuration",
align: "center",
},
{
title: "离线设备离线时长占比",
dataIndex: "date",
key: "date",
dataIndex: "offlineDurationRate",
key: "offlineDurationRate",
align: "center",
},
{
title: "全部设备离线时长占比",
dataIndex: "date",
key: "date",
dataIndex: "offlineDurationRateTotal",
key: "offlineDurationRateTotal",
align: "center",
},
];
@ -128,6 +122,7 @@ function ExceptionParkReport() {
const [FormDatas, setFormDatas] = useState(
form_data ? JSON.parse(form_data) : formdata
);
const [Textcl, setTextcl] = useState("");
//
const [loading, setLoading] = useState(false);
//
@ -135,7 +130,13 @@ function ExceptionParkReport() {
data: [],
total: 0,
});
const [DataTop, setDataTop] = useState({
deviceTotal: 0,
offlineTimes: 0,
offlineDuration: 0,
offlineDurationRate: 0,
offlineDurationRateTotal: 0,
});
//
const [Area, setArea] = useState([]);
//
@ -143,7 +144,7 @@ function ExceptionParkReport() {
//
const [options, setOptions] = useState([]);
const [Open, setOpen] = useState(true);
const [Open, setOpen] = useState(false);
//
const [selectArr, setSelectArr] = useState([]);
//
@ -217,8 +218,8 @@ function ExceptionParkReport() {
setFormData({
...FormData,
date_type: e,
start_time: start,
end_time: end,
start_date: start,
end_date: end,
});
};
@ -336,11 +337,21 @@ function ExceptionParkReport() {
link.click();
document.body.removeChild(link);
};
const SubmitPush = () => {
tipForm
.validateFields()
.then((res) => {
ReportPaySummaryReport(res.filename);
})
.catch((err) => {
console.log(err);
});
};
//
const ReportPaySummaryReport = () => {
ajax.ElectInvoice.getOperationReport({
const ReportPaySummaryReport = (val) => {
ajax.ElectInvoice.getPstaticsexport({
...FormDatas,
is_excel: 1,
export_name: val,
}).then(
(res) => {
if (parseInt(res?.status) === 20000) {
@ -354,17 +365,39 @@ function ExceptionParkReport() {
}
);
};
//sf
const getTopData = (data) => {
ajax.ElectInvoice.getPstatics({
...data,
area_id: data?.area_id?.length
? data?.area_id[data.area_id.length - 1]
: "",
}).then(
(res) => {
if (parseInt(res?.status) === 20000) {
setDataTop(res?.data);
} else {
message.error(res?.message);
}
},
(err) => {
console.log(err);
}
);
};
//
const getData = (data) => {
setLoading(false);
ajax.ElectInvoice.getOperationReport({
ajax.ElectInvoice.getPstaticslist({
...data,
area: data?.area?.length ? data?.area[data.area.length - 1] : "",
area_id: data?.area_id?.length
? data?.area_id[data.area_id.length - 1]
: "",
}).then(
(res) => {
if (parseInt(res?.status) === 20000) {
setData({
data: res?.data?.list || [],
data: res?.data || [],
total: res?.total || 0,
});
setLoading(true);
@ -384,7 +417,8 @@ function ExceptionParkReport() {
"FormData_OperationReport",
JSON.stringify(FormDatas)
);
// getData(FormDatas);
getData(FormDatas);
getTopData(FormDatas);
//
}, [FormDatas]);
useEffect(() => {
@ -434,23 +468,23 @@ function ExceptionParkReport() {
format={TimeChange().mat}
picker={TimeChange().str}
allowClear={false}
value={FormData.start_time ? moment(FormData.start_time) : null}
value={FormData.start_date ? moment(FormData.start_date) : null}
onChange={(date, dateString) => {
console.log(date, dateString);
if (TimeChange().str == "week") {
setFormData({
...FormData,
start_time: date
start_date: date
? moment(date).day(1).format("YYYY-MM-DD")
: null,
});
} else {
setFormData({ ...FormData, start_time: dateString });
setFormData({ ...FormData, start_date: dateString });
}
}}
disabledDate={(current) =>
current > moment(FormData.end_time) ||
current < moment(FormData.end_time).subtract(120, "days")
current > moment(FormData.end_date) ||
current < moment(FormData.end_date).subtract(120, "days")
}
/>
</div>
@ -464,22 +498,22 @@ function ExceptionParkReport() {
format={TimeChange().mat}
picker={TimeChange().str}
allowClear={false}
value={FormData.end_time ? moment(FormData.end_time) : null}
value={FormData.end_date ? moment(FormData.end_date) : null}
onChange={(date, dateString) => {
if (TimeChange().str == "week") {
setFormData({
...FormData,
end_time: date
end_date: date
? moment(date).day(7).format("YYYY-MM-DD")
: null,
});
} else {
setFormData({ ...FormData, end_time: dateString });
setFormData({ ...FormData, end_date: dateString });
}
}}
disabledDate={(current) =>
current < moment(FormData.start_time) ||
current > moment(FormData.start_time).add(120, "days")
current < moment(FormData.start_date) ||
current > moment(FormData.start_date).add(120, "days")
}
/>
</div>
@ -490,7 +524,7 @@ function ExceptionParkReport() {
<Cascader
options={Area}
expandTrigger="hover"
value={FormData.area}
value={FormData.area_id}
style={{
width: "100%",
}}
@ -503,7 +537,7 @@ function ExceptionParkReport() {
onChange={(e) =>
setFormData({
...FormData,
area: e,
area_id: e,
})
}
/>
@ -532,7 +566,7 @@ function ExceptionParkReport() {
<span className="lab">停车场</span>
<div className="inputs">
<AutoComplete
value={FormData.name}
value={FormData.parkName}
style={{
width: "100%",
}}
@ -543,7 +577,7 @@ function ExceptionParkReport() {
console.log(e);
setFormData({
...FormData,
name: e,
parkName: e,
});
}}
/>
@ -553,7 +587,7 @@ function ExceptionParkReport() {
<span className="lab">车场类型</span>
<div className="inputs">
<Select
value={FormData.park_type}
value={FormData.parkType}
style={{
width: "100%",
}}
@ -575,7 +609,7 @@ function ExceptionParkReport() {
onChange={(e) =>
setFormData({
...FormData,
park_type: e,
parkType: e,
})
}
/>
@ -636,7 +670,7 @@ function ExceptionParkReport() {
)}
</div>
{ele?.subtext ? <div className="gnu">{ele.subtext}</div> : ""}
<div className="gnum">{ele.value}</div>
<div className="gnum">{DataTop[ele.value]}</div>
</div>
);
})}
@ -648,7 +682,7 @@ function ExceptionParkReport() {
<span
className={"sear_ser"}
onClick={() => {
Data?.total && ReportPaySummaryReport();
Data?.total && setOpen(true);
// setFormDatas({ ...FormData });
}}
>
@ -700,6 +734,41 @@ function ExceptionParkReport() {
</ResultFlow>
</div>
</div>
<Modal
open={Open}
footer={null}
onCancel={() => {
setOpen(false);
tipForm.resetFields();
}}
// width={300}
className="modal-invoic"
title={"提示"}
>
<Form form={tipForm}>
<Form.Item
label="文件名"
name="filename"
rules={[{ required: true }]}
>
<Input placeholder={"请输入文件名"} />
</Form.Item>
</Form>
<div className="submitBtn">
<p className="ant-btn submit" onClick={() => SubmitPush()}>
提交
</p>
<p
className="ant-btn cancel"
onClick={() => {
tipForm.resetFields();
setOpen(false);
}}
>
取消
</p>
</div>
</Modal>
</div>
);
}

16
src/pages/DataAnalysisPrediction/MemberStat/RegisterAly/loadable.jsx

@ -74,7 +74,8 @@ function RegisterAly() {
data: [],
total: 0,
list: {
binding_count: "",
binding_car_count: "",
binding_user_count: "",
user_count: "",
car_count: "",
unbinding_car_count: "",
@ -260,7 +261,8 @@ function RegisterAly() {
const getRingOption = (
data = {
binding_count: "0",
binding_car_count: "0",
binding_user_count: "0",
user_count: "0",
car_count: "0",
unbinding_car_count: "0",
@ -272,7 +274,7 @@ function RegisterAly() {
[
{
name: "绑定车牌数",
value: data.binding_count,
value: data.binding_car_count,
},
{
name: "未绑定车牌数",
@ -283,7 +285,7 @@ function RegisterAly() {
[
{
name: "绑定车牌会员数",
value: data.binding_count,
value: data.binding_user_count,
},
{
name: "非绑定车牌会员数",
@ -577,7 +579,8 @@ function RegisterAly() {
data: res?.data || [],
total: res?.data?.length || 0,
list: {
binding_count: res.binding_count,
binding_car_count: res.binding_car_count,
binding_user_count: res.binding_user_count,
user_count: res.user_count,
car_count: res.car_count,
unbinding_car_count: res.unbinding_car_count,
@ -586,7 +589,8 @@ function RegisterAly() {
});
getRevenueOption(res?.data);
getRingOption({
binding_count: res.binding_count,
binding_car_count: res.binding_car_count,
binding_user_count: res.binding_user_count,
user_count: res.user_count,
car_count: res.car_count,
unbinding_car_count: res.unbinding_car_count,

45
src/pages/DataAnalysisPrediction/ParkingOverview/index.scss

@ -206,7 +206,7 @@ $color-primary : var(--color-primary);
align-items: center;
width: max-content;
height: 40px;
background: rgba(30, 38, 53, 0.64);
p {
display: flex;
@ -222,6 +222,10 @@ $color-primary : var(--color-primary);
color: #127bfc;
background: rgba(30, 38, 53, 0.64);
}
div {
background: rgba(30, 38, 53, 0.64);
}
}
.left_home {
@ -439,6 +443,45 @@ $color-primary : var(--color-primary);
background: url("../../../assets/images/equip/home/right_checked.png") no-repeat;
}
}
.tfff {
display: flex;
flex-direction: column;
justify-content: space-between;
}
.topph {
display: flex;
align-items: center;
padding: 0 20px;
margin-top: 4px;
.nol {
display: flex;
flex-direction: column;
justify-content: center;
margin-right: 8px;
// font-size: 18px;
p {
border: #127bfc 1px solid;
margin-bottom: 0%;
padding: 2px;
}
}
.nor {
flex: 1;
display: flex;
flex-direction: column;
.trr {
display: flex;
justify-content: space-between;
}
}
}
}
.pk_footer {

1016
src/pages/DataAnalysisPrediction/ParkingOverview/loadable.jsx
File diff suppressed because it is too large
View File

2
src/pages/FinancialMgm/FinancialReport/OperationReport/loadable.jsx

@ -43,7 +43,7 @@ function OperationReport() {
name: "", //
park_type: "", // 1= 2=
operator_status: [], //(1线234线)
area: [],
area: ["0"],
date_type: "1",
is_excel: 0,
start_time: moment()

77
src/pages/FinancialMgm/FinancialReport/ParkCardReport/loadable.jsx

@ -25,27 +25,28 @@ const { RangePicker } = DatePicker;
function ParkCardReport() {
//-
const formdata = {
time_type: "1",
date_type: "1",
start_time: moment()
.startOf("day")
.subtract(1, "days")
.format("YYYY-MM-DD"),
end_time: moment().endOf("day").subtract(1, "days").format("YYYY-MM-DD"),
pn: 1,
export: 0,
page_size: dictionary?.pageSizeOptions1[0],
};
const col = [
{
title: "支付日期",
dataIndex: "time_type",
key: "time_type",
dataIndex: "date",
key: "date",
align: "center",
},
{
title: "余额",
dataIndex: "ye_money",
key: "ye_money",
dataIndex: "balance",
key: "balance",
align: "center",
render: (_, record) => {
return _ && _ + "元";
@ -53,8 +54,8 @@ function ParkCardReport() {
},
{
title: "现金",
dataIndex: "xj_money",
key: "xj_money",
dataIndex: "cash",
key: "cash",
align: "center",
render: (_, record) => {
return _ && _ + "元";
@ -62,8 +63,8 @@ function ParkCardReport() {
},
{
title: "微信",
dataIndex: "wx_money",
key: "wx_money",
dataIndex: "wechat",
key: "wechat",
align: "center",
render: (_, record) => {
return _ && _ + "元";
@ -71,8 +72,8 @@ function ParkCardReport() {
},
{
title: "支付宝",
dataIndex: "zfb_money",
key: "zfb_money",
dataIndex: "alipay",
key: "alipay",
align: "center",
render: (_, record) => {
return _ && _ + "元";
@ -80,8 +81,8 @@ function ParkCardReport() {
},
{
title: "系统录入",
dataIndex: "xtlr_money",
key: "xtlr_money",
dataIndex: "system_input",
key: "system_input",
align: "center",
render: (_, record) => {
return _ && _ + "元";
@ -89,8 +90,8 @@ function ParkCardReport() {
},
{
title: "招商银行",
dataIndex: "zsyh_money",
key: "zsyh_money",
dataIndex: "merchants_bank",
key: "merchants_bank",
align: "center",
render: (_, record) => {
return _ && _ + "元";
@ -98,8 +99,8 @@ function ParkCardReport() {
},
{
title: "数字人民币",
dataIndex: "szrmb_money",
key: "szrmb_money",
dataIndex: "digital_yuan",
key: "digital_yuan",
align: "center",
render: (_, record) => {
return _ && _ + "元";
@ -107,8 +108,8 @@ function ParkCardReport() {
},
{
title: "车场自收",
dataIndex: "cczs_money",
key: "cczs_money",
dataIndex: "parking",
key: "parking",
align: "center",
render: (_, record) => {
return _ && _ + "元";
@ -116,8 +117,8 @@ function ParkCardReport() {
},
{
title: "ETC",
dataIndex: "etc_money",
key: "etc_money",
dataIndex: "ETC",
key: "ETC",
align: "center",
render: (_, record) => {
return _ && _ + "元";
@ -169,7 +170,7 @@ function ParkCardReport() {
//
const TimeChange = () => {
let e = FormData.time_type;
let e = FormData.date_type;
let str = "date";
let mat = "YYYY-MM-DD";
if (e == 4) {
@ -203,7 +204,7 @@ function ParkCardReport() {
}
setFormData({
...FormData,
time_type: e,
date_type: e,
start_time: start,
end_time: end,
});
@ -264,15 +265,33 @@ function ParkCardReport() {
</div>
);
};
//
const ReportPaySummaryReport = () => {
ajax.ElectInvoice.getParkCarOrder({
...FormDatas,
export: 1,
}).then(
(res) => {
if (parseInt(res?.status) === 20000) {
Daownload(res?.data?.url);
} else {
message.error(res?.message);
}
},
(err) => {
console.log(err);
}
);
};
//
const getData = (data) => {
setLoading(false);
ajax.ElectInvoice.getPdalist({ ...data }).then(
ajax.ElectInvoice.getParkCarOrder({ ...data }).then(
(res) => {
if (parseInt(res?.status) === 20000) {
setData({
data: res?.data?.list || [],
total: res?.data?.total || 0,
data: res?.data || [],
total: res?.total || 0,
});
setLoading(true);
} else {
@ -320,7 +339,7 @@ function ParkCardReport() {
时间
<div className="daf">
<Select
value={FormData.time_type}
value={FormData.date_type}
// style={{
// width: "100%",
// }}
@ -389,7 +408,7 @@ function ParkCardReport() {
? moment(date).day(7).format("YYYY-MM-DD")
: null,
});
} else {
} else {
setFormData({ ...FormData, end_time: dateString });
}
}}
@ -436,7 +455,7 @@ function ParkCardReport() {
<span
className={"sear_ser"}
onClick={() => {
// Data?.total && setFormDatas({ ...FormData });
Data?.total && ReportPaySummaryReport();
}}
>
导出

2
src/pages/FinancialMgm/FinancialReport/ParkingIncomeReport/loadable.jsx

@ -41,7 +41,7 @@ function ParkingIncomeReport() {
park_type: "", //
operator_status: [], //
name: "", //
area: [],
area: ["0"],
date_type: "1",
start_time: moment()
.startOf("day")

104
src/pages/FinancialMgm/FinancialReport/PreOrderReport/loadable.jsx

@ -27,10 +27,10 @@ function PreOrderReport() {
const [form] = Form.useForm();
//-
const formdata = {
type: "1", //
export: "0", //
operator_id: "0", //id
headname: "", //
time_type: "1",
parking_name: "", //
date_type: "1",
start_time: moment()
.startOf("day")
.subtract(1, "days")
@ -39,28 +39,20 @@ function PreOrderReport() {
pn: 1,
page_size: dictionary?.pageSizeOptions1[0],
};
const formlayout = {
labelCol: {
span: 6,
},
wrapperCol: {
span: 18,
},
};
const zonji = [
{
text: "合计预付金额",
value: "0.00",
value: "payment_amount_total",
color: "#a461d8",
},
{
text: "预付抵扣总额",
value: "0.00",
value: "payment_deduction_amount_total",
color: "#82c43c",
},
{
text: "退款总计",
value: "0.00",
value: "payment_refund_amount_total",
color: "#527bff",
},
];
@ -78,7 +70,10 @@ function PreOrderReport() {
//
const [Data, setData] = useState({
data: [],
total: 1,
total: 0,
payment_amount_total: 0,
payment_deduction_amount_total: 0,
payment_refund_amount_total: 0,
});
//
const [options, setOptions] = useState([]);
@ -94,8 +89,8 @@ function PreOrderReport() {
return [
{
title: "日期",
dataIndex: "pay_time",
key: "pay_time",
dataIndex: "date",
key: "date",
width: 120,
fixed: "right",
align: "center",
@ -103,36 +98,36 @@ function PreOrderReport() {
{
title: "商户名称",
width: 120,
dataIndex: "operator_id",
key: "operator_id",
dataIndex: "store_name",
key: "store_name",
align: "center",
},
{
title: "停车场名称",
width: 120,
dataIndex: "tax",
key: "tax",
dataIndex: "parking_name",
key: "parking_name",
align: "center",
},
{
title: "泊位数",
width: 120,
dataIndex: "tax",
key: "tax",
dataIndex: "parking_num",
key: "parking_num",
align: "center",
},
{
title: "预付笔数",
width: 120,
dataIndex: "tax",
key: "tax",
dataIndex: "payment_num",
key: "payment_num",
align: "center",
},
{
title: "预付金额(元)",
width: 120,
dataIndex: "tax",
key: "tax",
dataIndex: "payment_amount",
key: "payment_amount",
align: "center",
render: (_, record) => {
return _ && _;
@ -141,28 +136,28 @@ function PreOrderReport() {
{
title: "预付抵扣笔数",
width: 120,
dataIndex: "tax",
key: "tax",
dataIndex: "payment_deduction_num",
key: "payment_deduction_num",
align: "center",
},
{
title: "预付抵扣金额(元)",
width: 150,
dataIndex: "tax",
key: "tax",
dataIndex: "payment_deduction_amount",
key: "payment_deduction_amount",
align: "center",
},
{
title: "预付退款笔数",
width: 120,
dataIndex: "tax",
key: "tax",
dataIndex: "payment_refund_num",
key: "payment_refund_num",
align: "center",
},
{
title: "预付退款金额(元)",
width: 150,
dataIndex: "tax",
dataIndex: "payment_refund_amount ",
key: "tax",
align: "center",
},
@ -216,7 +211,7 @@ function PreOrderReport() {
};
//
const TimeChange = () => {
let e = FormData.time_type;
let e = FormData.date_type;
let str = "date";
let mat = "YYYY-MM-DD";
if (e == 4) {
@ -250,7 +245,7 @@ function PreOrderReport() {
}
setFormData({
...FormData,
time_type: e,
date_type: e,
start_time: start,
end_time: end,
});
@ -316,15 +311,36 @@ function PreOrderReport() {
}
);
};
//
const ReportPaySummaryReport = () => {
ajax.ElectInvoice.getPayment({
...FormDatas,
export: 1,
}).then(
(res) => {
if (parseInt(res?.status) === 20000) {
Daownload(res?.data?.url);
} else {
message.error(res?.message);
}
},
(err) => {
console.log(err);
}
);
};
//
const getData = (data) => {
setLoading(false);
ajax.ElectInvoice.getInvoice({ ...data }).then(
ajax.ElectInvoice.getPayment({ ...data }).then(
(res) => {
if (parseInt(res?.status) === 20000) {
setData({
data: res?.data || [],
total: res.total || 0,
payment_amount_total: res?.payment_amount_total,
payment_deduction_amount_total: res?.payment_deduction_amount_total,
payment_refund_amount_total: res?.payment_refund_amount_total,
});
setLoading(true);
} else {
@ -373,7 +389,7 @@ function PreOrderReport() {
<span className="lab">停车场名称</span>
<div className="inputs">
<AutoComplete
value={FormData.headname}
value={FormData.parking_name}
style={{
width: "100%",
}}
@ -384,7 +400,7 @@ function PreOrderReport() {
console.log(e);
setFormData({
...FormData,
headname: e,
parking_name: e,
});
}}
/>
@ -395,7 +411,7 @@ function PreOrderReport() {
时间
<div className="daf">
<Select
value={FormData.time_type}
value={FormData.date_type}
// style={{
// width: "100%",
// }}
@ -438,7 +454,7 @@ function PreOrderReport() {
? moment(date).day(1).format("YYYY-MM-DD")
: null,
});
}else {
} else {
setFormData({ ...FormData, start_time: dateString });
}
}}
@ -464,7 +480,7 @@ function PreOrderReport() {
? moment(date).day(7).format("YYYY-MM-DD")
: null,
});
} else {
} else {
setFormData({ ...FormData, end_time: dateString });
}
}}
@ -530,7 +546,7 @@ function PreOrderReport() {
<span
className={"sear_ser"}
onClick={() => {
// Data?.total && setFormDatas({ ...FormData });
Data?.total && ReportPaySummaryReport();
}}
>
导出
@ -542,7 +558,7 @@ function PreOrderReport() {
<div className="pl" key={ele.text}>
<i style={{ background: ele.color }}></i>
<p>
{ele.text}: <span>{ele.value}</span>
{ele.text}: <span>{Data[ele.value]}</span>
</p>
</div>
);

49
src/services/ElectInvoice/index.js

@ -74,6 +74,25 @@ const getOperationReport = (params) => {
data: params,
});
};
//************************停车卡报表
// 获取列表数据
const getParkCarOrder = (params) => {
return ajax({
url: "/api/fin/finance_table/parking_card_order_statistics",
type: "post",
data: params,
});
};
//************************ 预付报表
// 获取列表数据
const getPayment = (params) => {
return ajax({
url: "/api/fin/finance_table/advance_payment_statistics",
type: "post",
data: params,
});
};
//************************总收入报表
// 获取列表数据
const getPaySummaryReport = (params) => {
@ -209,6 +228,31 @@ const exportPayFx = (params) => {
data: params,
});
};
//************************设备运行统计
//获取列表sf数据
const getPstatics = (params) => {
return ajax({
url: "/api/ana/equipmentRuning/statics",
type: "post",
data: params,
});
};
//获取设备运行统计列表
const getPstaticslist = (params) => {
return ajax({
url: "/api/ana/equipmentRuning/list",
type: "post",
data: params,
});
};
//获取列表设备运行统计导出接口
const getPstaticsexport = (params) => {
return ajax({
url: "/api/ana/equipmentRuning/export",
type: "post",
data: params,
});
};
//-------------------------------------------------设备分析---------------
export default {
getInvoiceMess,
@ -223,6 +267,8 @@ export default {
ReportPaySummaryReport,
getOperationReport,
getSelectOperator,
getParkCarOrder,
getPayment,
getGeneralBusiness,
getSetBilly,
@ -238,4 +284,7 @@ export default {
exportParking,
exportRegister,
exportPayFx,
getPstatics,
getPstaticslist,
getPstaticsexport,
};

26
src/services/ParkingOverview/index.js

@ -98,7 +98,7 @@ export default {
});
},
//获取区域或商户
//获取底部区域或商户
GetAreaShop: (params) => {
return ajax({
url: "/api/ana/overview/getOperatorArea",
@ -106,4 +106,28 @@ export default {
data: params,
});
},
//概览-收费top5
GetrateRank: (params) => {
return ajax({
url: "/api/ana/overview/rateRank",
type: "get",
data: params,
});
},
//概览-营收分析类型占比
GetincomeType: (params) => {
return ajax({
url: "/api/ana/overview/incomeType",
type: "get",
data: params,
});
},
//车场总数 单独提供给区大屏
GetParkinfo: (params) => {
return ajax({
url: "/api/ana/overview/parkingInfo",
type: "get",
data: params,
});
},
};
Loading…
Cancel
Save