Browse Source

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

tags/PMS_Frontend_v1.0.6-develop
chenglb 1 year ago
parent
commit
08dc4ed95b
  1. 4
      src/assets/css/base.scss
  2. BIN
      src/assets/images/equip/home/lb.png
  3. BIN
      src/assets/images/equip/home/nd.png
  4. BIN
      src/assets/images/equip/home/nz.png
  5. BIN
      src/assets/images/equip/home/pvhome_header.png
  6. BIN
      src/assets/images/equip/home/pvhome_title.png
  7. BIN
      src/assets/images/equip/home/rd.png
  8. BIN
      src/assets/images/equip/home/st.png
  9. BIN
      src/assets/images/equip/home/topr.png
  10. 10
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/CarTypeAly/loadable.jsx
  11. 1
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/NightParkStat/loadable.jsx
  12. 7
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkTurnoverAly/loadable.jsx
  13. 7
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkUsageAly/loadable.jsx
  14. 1
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkingAlyDuration/loadable.jsx
  15. 1
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkingAlyOverview/loadable.jsx
  16. 3
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkingAlyPeriod/loadable.jsx
  17. 5
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkingAlyReport/loadable.jsx
  18. 1
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkingLiveData/loadable.jsx
  19. 1
      src/pages/DataAnalysisPrediction/ParkingBusinessAly/TemporaryParkStat/loadable.jsx
  20. 91
      src/pages/DataAnalysisPrediction/ParkingOverview/index.scss
  21. 53
      src/pages/DataAnalysisPrediction/ParkingOverview/loadable.jsx
  22. 4
      src/pages/FinancialMgm/OrderInquiry/ProductOrderInquiry/index.jsx
  23. 3
      src/pages/FinancialMgm/OrderInquiry/ProductOrderInquiry/index.scss
  24. 10
      src/pages/InRoadMgm/BusinessMgm/SpecialRecord/loadable.jsx
  25. 6
      src/pages/InRoadMgm/PersonMgm/AuditMgm/AuditCheck/loadable.jsx
  26. 2
      src/pages/InRoadMgm/RecordInquiry/DisabledCarParkRecordTotal/loadable.jsx
  27. 4
      src/pages/MerchantMgm/InvoiceConf/loadable.jsx
  28. 10
      src/pages/OperationCenter/ArrearsRecover/ArrearsCarTask/loadable.jsx
  29. 9
      src/pages/OperationCenter/CustomerServieMgm/ComplainManage/loadable.jsx
  30. 80
      src/pages/OperationCenter/OperationSales/CreditScoreMgm/loadable.jsx
  31. 4
      src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardMgm/index.scss
  32. 14
      src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardMgm/loadable.jsx
  33. 2
      src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardOrder/index.scss
  34. 8
      src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardOrder/loadable.jsx
  35. 2
      src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardStat/index.scss
  36. 6
      src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardStat/loadable.jsx
  37. 87
      src/pages/OperationCenter/OtherBusiness/Staggered/StaggeredMgm/loadable.jsx
  38. 5
      src/pages/OperationCenter/UserMgm/UserInfo/loadable.jsx
  39. 2
      src/pages/SystemMgm/BusinessConfig/BusinessConf/loadable.jsx
  40. 2
      src/pages/SystemMgm/RoleMgm/loadable.jsx
  41. 34
      src/pages/SystemMgm/SystemLog/loadable.jsx
  42. 22
      src/services/OperationCenter/OperationSales/index.js

4
src/assets/css/base.scss

@ -9,7 +9,9 @@
p {
margin-bottom: 0;
}
em{
font-style: normal;
}
#root,
html,
body {

BIN
src/assets/images/equip/home/lb.png

After

Width: 41  |  Height: 41  |  Size: 3.4 KiB

BIN
src/assets/images/equip/home/nd.png

After

Width: 48  |  Height: 23  |  Size: 1.8 KiB

BIN
src/assets/images/equip/home/nz.png

After

Width: 34  |  Height: 39  |  Size: 1.9 KiB

BIN
src/assets/images/equip/home/pvhome_header.png

Before

Width: 1920  |  Height: 100  |  Size: 30 KiB

After

Width: 1920  |  Height: 90  |  Size: 97 KiB

BIN
src/assets/images/equip/home/pvhome_title.png

Before

Width: 320  |  Height: 50  |  Size: 2.3 KiB

After

Width: 340  |  Height: 40  |  Size: 14 KiB

BIN
src/assets/images/equip/home/rd.png

After

Width: 48  |  Height: 23  |  Size: 1.8 KiB

BIN
src/assets/images/equip/home/st.png

After

Width: 48  |  Height: 23  |  Size: 1.6 KiB

BIN
src/assets/images/equip/home/topr.png

After

Width: 46  |  Height: 29  |  Size: 1.4 KiB

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

@ -93,19 +93,20 @@ function CarTypeAly() {
title: '序号',
dataIndex: 'index',
key: 'index',
width: 100,
width: 150,
render: (text, record, index) => index + 1
},
{
title: '区域',
dataIndex: 'name',
key: 'name',
width: 280,
width: 350,
},
{
title: '泊位数(个)',
dataIndex: 'num',
key: 'nmu',
//align: "right",
//width: 200,
},
]
@ -114,14 +115,14 @@ function CarTypeAly() {
title: '序号',
dataIndex: 'index',
key: 'index',
width: 100,
width: 150,
render: (text, record, index) => index + 1
},
{
title: '停车场',
dataIndex: 'name',
key: 'name',
width: 280,
width: 350,
},
{
title: '泊位数(个)',
@ -412,6 +413,7 @@ function CarTypeAly() {
options={areaList}
placeholder="请选择区域"
expandTrigger="hover"
changeOnSelect
fieldNames={{
label: "name",
value: "id",

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

@ -345,6 +345,7 @@ function NightParkStat() {
options={areaList}
placeholder="请选择区域"
expandTrigger="hover"
changeOnSelect
fieldNames={{
label: "name",
value: "id",

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

@ -27,7 +27,7 @@ function ParkTurnoverAly() {
end_time: moment().endOf("day").format("YYYY-MM-DD"),
date_type: '1', //
operator_id: '0',
area_id:'0',
area_id: '0',
car_parking_type: '3'
};
//
@ -216,7 +216,7 @@ function ParkTurnoverAly() {
</div>`
}
}
setRevenueData({...lineChartOption(areaNames, xAxisData, "周转次数(次)", seriesData),...tooltip});
setRevenueData({ ...lineChartOption(areaNames, xAxisData, "周转次数(次)", seriesData), ...tooltip });
};
//
const getLineOption = (data) => {
@ -279,7 +279,7 @@ function ParkTurnoverAly() {
</div>`
}
}
setLineData({...lineChartOption(areaNames, xAxisData, "数量(次)", seriesData),...tooltip});
setLineData({ ...lineChartOption(areaNames, xAxisData, "数量(次)", seriesData), ...tooltip });
};
function getParkingIncome(data) {
ajax
@ -378,6 +378,7 @@ function ParkTurnoverAly() {
options={areaList}
placeholder="请选择区域"
expandTrigger="hover"
changeOnSelect
fieldNames={{
label: "name",
value: "id",

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

@ -28,8 +28,8 @@ function ParkUsageAly() {
end_time: moment().endOf("day").format("YYYY-MM-DD"),
car_parking_type: '3',
operator_id: '0',
area_id:'0',
charge_type:'0',
area_id: '0',
charge_type: '0',
date_type: '1', //
};
//
@ -216,7 +216,7 @@ function ParkUsageAly() {
</div>`
}
}
setRevenueData({...lineChartOption(areaNames, xAxisData, "泊位利用率(%)", seriesData),...tooltip});
setRevenueData({ ...lineChartOption(areaNames, xAxisData, "泊位利用率(%)", seriesData), ...tooltip });
};
function getParkingIncome(data) {
@ -324,6 +324,7 @@ function ParkUsageAly() {
options={areaList}
placeholder="请选择区域"
expandTrigger="hover"
changeOnSelect
fieldNames={{
label: "name",
value: "id",

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

@ -672,6 +672,7 @@ function ParkingAlyDuration() {
options={areaList}
placeholder="请选择区域"
expandTrigger="hover"
changeOnSelect
fieldNames={{
label: "name",
value: "id",

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

@ -463,6 +463,7 @@ function ParkingAlyOverview() {
options={areaList}
placeholder="请选择区域"
expandTrigger="hover"
changeOnSelect
fieldNames={{
label: "name",
value: "id",

3
src/pages/DataAnalysisPrediction/ParkingBusinessAly/ParkingAlyPeriod/loadable.jsx

@ -250,7 +250,7 @@ function ParkingAlyPeriod() {
</div>`
}
}
setParkData({...lineChartOption(areaNames, xAxisData, "饱和度", seriesData, areaNames),...tooltip});
setParkData({ ...lineChartOption(areaNames, xAxisData, "饱和度", seriesData, areaNames), ...tooltip });
};
const randerColor = () => {
let arr = [];
@ -459,6 +459,7 @@ function ParkingAlyPeriod() {
options={areaList}
placeholder="请选择区域"
expandTrigger="hover"
changeOnSelect
fieldNames={{
label: "name",
value: "id",

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

@ -27,8 +27,8 @@ function ParkingAlyReport() {
end_time: moment().endOf("day").format("YYYY-MM-DD"),
date_type: '1',
car_parking_type: '3',
operator_id:'0',
area_id:'0',
operator_id: '0',
area_id: '0',
};
//
const [pageInfo, setPageInfo] = useState({
@ -303,6 +303,7 @@ function ParkingAlyReport() {
options={areaList}
placeholder="请选择区域"
expandTrigger="hover"
changeOnSelect
fieldNames={{
label: "name",
value: "id",

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

@ -371,6 +371,7 @@ function ParkingLiveData() {
options={areaList}
placeholder="请选择区域"
expandTrigger="hover"
changeOnSelect
fieldNames={{
label: "name",
value: "id",

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

@ -323,6 +323,7 @@ function TemporaryParkStat() {
options={areaList}
placeholder="请选择区域"
expandTrigger="hover"
changeOnSelect
fieldNames={{
label: "name",
value: "id",

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

@ -12,10 +12,10 @@ $color-primary : var(--color-primary);
.pkh_title {
display: flex;
font-size: 16px;
padding: 6px 0 0 44px;
align-items: center;
width: 100%;
height: 50px;
padding: 0 0 0px 26px;
height: 40px;
background: url("../../../assets/images/equip/home/pvhome_title.png");
i {
@ -55,36 +55,42 @@ $color-primary : var(--color-primary);
.input_h {
z-index: 1000;
position: absolute;
top: 70px;
top: 90px;
left: 380px;
width: 340px;
height: 34px;
background: #1e2635;
border: 1px solid #a9c6ff;
background: #01050e;
// border: 1px solid #a9c6ff;
border-radius: 2px;
display: flex;
overflow: hidden;
.serdd {
width: 18px;
width: 33px;
height: 100%;
justify-content: center;
font-size: 22px;
cursor: pointer;
color: #A9C6FF;
display: flex;
z-index: 1001;
align-items: center;
}
.ant-select:not(.ant-select-customize-input) .ant-select-selector {
border: none;
}
}
.select_modals {
z-index: 1000;
position: absolute;
top: 133px;
left: 392px;
left: 380px;
width: 340px;
height: 414px;
background: #01050e;
border: 1px solid #a9c6ff;
// border: 1px solid #a9c6ff;
border-radius: 2px;
display: flex;
padding: 20px 18px 20px 20px;
@ -200,8 +206,8 @@ $color-primary : var(--color-primary);
.left_content {
z-index: 1000;
position: absolute;
top: 22px;
left: 50px;
top: 44px;
left: 100px;
display: flex;
align-items: center;
width: max-content;
@ -212,15 +218,16 @@ $color-primary : var(--color-primary);
display: flex;
justify-content: center;
align-items: center;
width: 50px;
height: 50px;
margin-right: 6px;
width: 40px;
height: 40px;
// margin-right: 6px;
border-radius: 50%;
border: #127bfc 4px solid;
background: url("@/assets/images/equip/home/lb.png");
// border: #75DDFF 4px solid;
margin-bottom: 0%;
font-size: 20px;
color: #127bfc;
background: #01050e;
// font-size: 20px;
// color: #75DDFF;
// background: #01050e;
}
div {
@ -231,10 +238,10 @@ $color-primary : var(--color-primary);
.left_home {
z-index: 1000;
position: absolute;
top: 70px;
top: 90px;
left: 50px;
width: 320px;
height: 89%;
height: 84%;
background: #01050e;
display: flex;
flex-direction: column;
@ -397,8 +404,9 @@ $color-primary : var(--color-primary);
width: 30px;
height: 30px;
position: absolute;
top: 20px;
right: 30px;
top: 10px;
background: url("../../../assets/images/equip/home/nz.png");
right: 20px;
cursor: pointer;
.anticon {
@ -414,8 +422,8 @@ $color-primary : var(--color-primary);
i {
position: absolute;
right: 0;
top: 0;
right: -2px;
top: 9px;
width: 10px;
height: 10px;
border-radius: 50%;
@ -426,10 +434,10 @@ $color-primary : var(--color-primary);
.right_home {
z-index: 1000;
position: absolute;
top: 70px;
top: 90px;
right: 50px;
width: 320px;
height: 90%;
height: 87%;
background: #01050e;
display: flex;
flex-direction: column;
@ -508,7 +516,7 @@ $color-primary : var(--color-primary);
}
p {
border: #127bfc 1px solid;
border: #75DDFF 1px solid;
border-radius: 4px;
font-size: 14px;
text-align: center;
@ -577,19 +585,36 @@ $color-primary : var(--color-primary);
// font-size: 18px;
p {
width: 45px;
height: 28px;
z-index: 1;
// border: #127bfc 1px solid;
// border: #75DDFF 1px solid;
margin-bottom: 0%;
padding: 2px;
img {
position: absolute;
width: 100%;
left: 0;
// height: 100%;
}
}
span {
width: 100%;
height: 100%;
position: absolute;
transform: skew(-20deg);
.sfy {
color: #00ccff;
padding: 0 0 0px 7px;
background: url("../../../assets/images/equip/home/topr.png") 100% 100%;
}
.dad {
font-size: 14px;
font-weight: 600;
padding-left: 6px;
white-space: nowrap;
}
}
.nor {
@ -839,7 +864,7 @@ $color-primary : var(--color-primary);
cursor: pointer;
p {
background: #127bfc;
background: #75DDFF;
}
}
}

53
src/pages/DataAnalysisPrediction/ParkingOverview/loadable.jsx

@ -39,11 +39,11 @@ import "./index.scss";
import Btckd from "@/assets/images/equip/home/bottom_checked.png";
import Pkhl from "@/assets/images/equip/home/pkhome_left.png";
import Pkhr from "@/assets/images/equip/home/pkhome_right.png";
import Lf1 from "@/assets/images/equip/home/left_1.png";
import Lf2 from "@/assets/images/equip/home/left_2.png";
import st from "@/assets/images/equip/home/st.png";
import nd from "@/assets/images/equip/home/nd.png";
import Lf3 from "@/assets/images/equip/home/left_3.png";
import Lf4 from "@/assets/images/equip/home/left_4.png";
import Lf5 from "@/assets/images/equip/home/left_5.png";
import rd from "@/assets/images/equip/home/rd.png";
import Lf6 from "@/assets/images/equip/home/left_6.png";
import Lf7 from "@/assets/images/equip/home/left_7.png";
import Lf8 from "@/assets/images/equip/home/ldzs.png";
@ -84,13 +84,15 @@ const ParkingOverview = connect(function mapStateToProps(state) {
const cokd = [
{
color: "rgba(234, 234, 33,.6)",
show: "",
img: st,
},
{
color: "rgba(222, 206, 206,.6)",
img: nd,
},
{
color: "rgba(203, 122, 41,.6)",
img: rd,
},
];
//
@ -727,7 +729,7 @@ const ParkingOverview = connect(function mapStateToProps(state) {
{
// name: 'Access From',
type: "pie",
radius: ["60%", "70%"],
radius: ["58%", "70%"],
avoidLabelOverlap: false,
label: {
show: false,
@ -747,10 +749,10 @@ const ParkingOverview = connect(function mapStateToProps(state) {
},
],
grid: {
x: 50,
y: 55,
x2: 70,
y2: 20,
x: 20,
y: 25,
x2: 20,
y2: 50,
},
});
};
@ -977,7 +979,11 @@ const ParkingOverview = connect(function mapStateToProps(state) {
}
};
crtimer.onclose = function () {
GetCar();
try {
GetCar();
} catch (error) {
console.log(error);
}
};
};
//quyu
@ -1318,9 +1324,7 @@ const ParkingOverview = connect(function mapStateToProps(state) {
// onClick={() => {
// navigate("/nav");
// }}
>
西海岸新区停车信息管理平台
</div>
></div>
<div className="left_home">
<div className="pkh_title">停车业务概览</div>
<div className="dlex_f">
@ -1502,9 +1506,7 @@ const ParkingOverview = connect(function mapStateToProps(state) {
)}
{
<div className="left_content">
<p>
<SoundOutlined />
</p>
<p>{/* <SoundOutlined /> */}</p>
<div>{Text}</div>
</div>
}
@ -1568,7 +1570,7 @@ const ParkingOverview = connect(function mapStateToProps(state) {
// }
}}
>
<BellOutlined />
{/* <BellOutlined /> */}
{HoShow ? <i></i> : ""}
</div>
<div className="right_home">
@ -1600,18 +1602,20 @@ const ParkingOverview = connect(function mapStateToProps(state) {
return (
<div className="topph" key={ele.name + index}>
<div className="nol">
<p>No.{index + 1}</p>
<span
style={{
background: cokd[index]?.color || "",
}}
></span>
<p className={CarRoad[CarShow]?.type == 2 ? "sfy" : "dad"}>
{CarRoad[CarShow]?.type == 2 ? (
`No.${index + 1}`
) : cokd[index]?.img ? (
<img src={cokd[index]?.img} alt="" />
) : (
`No.${index + 1}`
)}
</p>
</div>
<div className="nor">
<div className="trr">
<span>{ele.name || "--"}</span>
<span>
{}{" "}
{CarRoad[CarShow]?.type == 2
? ele.rate || 0
: `${ele.paid_amount || 0}`}
@ -1620,6 +1624,7 @@ const ParkingOverview = connect(function mapStateToProps(state) {
<Progress
strokeColor={cokd[index]?.color || ""}
showInfo={false}
strokeWidth={6}
percent={
CarRoad[CarShow]?.type == 2
? ele?.rate?.slice(0, ele.rate.length - 1) || 0

4
src/pages/FinancialMgm/OrderInquiry/ProductOrderInquiry/index.jsx

@ -480,10 +480,10 @@ function ProductOrderInquiry() {
<div className="ltc-box-title"><div className="text">商品信息</div><div className="line"></div></div>
<div className="ltc-content">
<div className="ltc-item">
<div className="new-item">商品名称</div><div className="new-value">{ycddData?.goods_name || "--"}</div>
<div className="new-item" >商品名称</div><div className="new-value" title={ycddData?.goods_name || "--"}>{ycddData?.goods_name || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">商户名称</div><div className="new-value">{ycddData?.store_name || "--"}</div>
<div className="new-item">商户名称</div><div className="new-value" title={ycddData?.store_name || "--"}>{ycddData?.store_name || "--"}</div>
</div>
<div className="ltc-item">
<div className="new-item">适用范围</div><div className="new-value">{ycddData?.scope || "--"}</div>

3
src/pages/FinancialMgm/OrderInquiry/ProductOrderInquiry/index.scss

@ -292,6 +292,9 @@ $color-primary: var(--color-primary);
text-align: center;
background: #3E4557;
box-shadow: 0px 3px 8px 0px rgba(0, 0, 0, 0.12);
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.ltc-item-input {

10
src/pages/InRoadMgm/BusinessMgm/SpecialRecord/loadable.jsx

@ -2107,7 +2107,15 @@ function CollectorWorkStat(props) {
</div>
<div className="operation">
图片
<span className="font"><img style={{ width: 100 }} src={getCheckData.image1} alt="" /></span>
<span className="font">
{getCheckData.image&&
getCheckData.image?.map(item=>{
return(
<Image style={{ width: 100 }} src={getCheckData.image1} alt="" />
)
})
}
</span>
</div>
</div>
</div>

6
src/pages/InRoadMgm/PersonMgm/AuditMgm/AuditCheck/loadable.jsx

@ -405,7 +405,9 @@ function AuditCheck() {
</Form>
);
}
const handleReset=()=>{
searchForm.resetFields()
}
useEffect(() => {
getProgressData();
getAllOperator();
@ -430,7 +432,7 @@ function AuditCheck() {
<div className="searchWrap">
{renderSearch()}
<div className="bottomBox">
<Button className="reset">清空</Button>
<Button className="reset" onClick={handleReset}>清空</Button>
<Button type="primary" className="submit" onClick={search}>
查询
</Button>

2
src/pages/InRoadMgm/RecordInquiry/DisabledCarParkRecordTotal/loadable.jsx

@ -624,7 +624,7 @@ function DisabledCarParkRecordTotal() {
e.type = 1
}
ajax({
url: "/api/bpm/record/get_record_list",
url: "/api/bpm/record/get_record_cj",
type: "post",
data: { ...e, cj_temporary: 1 },
}).then((res) => {

4
src/pages/MerchantMgm/InvoiceConf/loadable.jsx

@ -443,7 +443,7 @@ function InvoiceConf(props) {
///
function stopBtn(record) {
ajax.updateInvoiceStatus({ id: record.id,click_status:record.status==1?2:1 }).then(
ajax.updateInvoiceStatus({ id: record.id,click_status:record.status==1?2:1, uid }).then(
res => {
if (res.status == 20000) {
getTable({...formData, ...pageInfo})
@ -1408,7 +1408,7 @@ function InvoiceConf(props) {
<div className="left-wrap">
<div className="item"><div className="item-title">配置ID</div>{records.info_id}</div>
<div className="item"><div className="item-title">状态</div>{records.status_name}</div>
<div className="item"><div className="item-title">商户名称</div>{records.tenantName}</div>
<div className="item"><div className="item-title">商户名称</div>{records.operatorName}</div>
<div className="item"><div className="item-title">发票平台</div>{records.receipt_type_name}</div>
</div>
<div className="left-wrap">

10
src/pages/OperationCenter/ArrearsRecover/ArrearsCarTask/loadable.jsx

@ -410,18 +410,18 @@ function ArrearsCarTask(props) {
}
//
const getSearchData = (data = formData) => {
console.log(formData.refund_amount_max, formData.refund_amount_min);
console.log(formData.refund_amount_min, formData.refund_amount_max);
let regex2 = /^$|^[0-9]+$/;
if (formData.plate != '' && !utils?.validationPlate(formData.plate)) {
message.error('请输入完整的车牌号码')
} else if (!regex2.test(formData.refund_amount_min) || !regex2.test(formData.refund_amount_max)) {
message.error('欠费金额输入不正确,请重新输入')
} else if (formData.refund_amount_max > formData.refund_amount_min) {
message.error('欠费金额输入不正确,请重新输入1')
} else if (formData.refund_amount_min > formData.refund_amount_max) {
message.error('欠费金额输入不正确,请重新输入')
} else if (!regex2.test(formData.sms_recovery_count_min) || !regex2.test(formData.sms_recovery_count_max)) {
message.error('追缴次数输入不正确,请重新输入')
} else if (formData.sms_recovery_count_max < formData.sms_recovery_count_min) {
message.error('追缴次数输入不正确,请重新输入2')
} else if (formData.sms_recovery_count_min > formData.sms_recovery_count_max) {
message.error('追缴次数输入不正确,请重新输入')
} else {
setFormData({ ...formData, pn: 1 })
getData(Object.assign({}, formData, { pn: 1 }))

9
src/pages/OperationCenter/CustomerServieMgm/ComplainManage/loadable.jsx

@ -385,10 +385,10 @@ function ComplainManage(props) {
};
//
const handleSearch = () => {
const handleSearch = (obj) => {
setLoading(true);
setPageInfo({ ...pageInfo, ...{ pn: 1 } });
setHoldData(formData);
setHoldData(obj ? obj : formData);
setIsAjax(!isAjax);
};
@ -1360,8 +1360,9 @@ function ComplainManage(props) {
<Tabs
activeKey={formData?.tab || "0"}
onChange={(e) => {
setFormData({ ...formData, tab: e });
handleSearch();
const newObj = { ...formData, tab: e };
setFormData(newObj);
handleSearch(newObj);
}}
>
<Tabs.TabPane tab="未办结" key="1"></Tabs.TabPane>

80
src/pages/OperationCenter/OperationSales/CreditScoreMgm/loadable.jsx

@ -25,12 +25,12 @@ function CreditScoreMgm() {
const [saveData, setSaveData] = useState({})//
const [redeemData, setRedeemData] = useState([])//
const [addData, setAddData] = useState({})//
const [award, setAward] = useState(0)//
const [awardId, setAwardId] = useState('')//
const [loading, setLoading] = useState(false)
const [total, setTotal] = useState(0);
const [redeemTotal, setRedeemTotal] = useState(0);
const [userId, setUserId] = useState();
const [awardId, setAwardId] = useState();
const [dropId, setDropId] = useState();//id
const [pageInfo, setPageInfo] = useState({
pn: 1,
page_size: 15
@ -52,6 +52,7 @@ function CreditScoreMgm() {
key: "iindex",
align: "center",
fixed: "right",
render: (text, record, index) => index + 1,
},
{
title: "用户ID",
@ -195,8 +196,8 @@ function CreditScoreMgm() {
<a
style={{ marginRight: 10 }}
onClick={() => {
setAwardId(record.id)
setRedeemEdit({ id: record.id })
setDropId(record.id)
setAddData({ id: record.id, awardId: record.awardId, redeem_points: record.redeem_points, total_num: record.total_num })
setEditVisible({ visible: true, type: 1 })
}}
>
@ -204,7 +205,7 @@ function CreditScoreMgm() {
</a>
<a
onClick={() => {
setAwardId(record.id)
setDropId(record.id)
setTipVisible(true)
}}
>
@ -248,7 +249,7 @@ function CreditScoreMgm() {
}
//
function search(e) {
ajax.getParkingAlyReportList(e).then((res) => {//getCreditScoreList
ajax.getCreditScoreList(e).then((res) => {//getCreditScoreList
let { status, data, total } = res
if (status == 20000) {
if (data.list) {
@ -291,10 +292,13 @@ function CreditScoreMgm() {
ajax.getCreditScoreRule({ ...saveData }).then((res) => {
let { status, data, total } = res
if (status == 20000) {
setAddData(data)
setRuleVisible(false)
setSaveData(data)
if (e) {
setRuleVisible(false)
message.success("保存成功")
}
} else {
setAddData({})
setSaveData({})
message.error(res.message)
}
})
@ -322,7 +326,7 @@ function CreditScoreMgm() {
})
}
//
function setRedeemEdit(e) {
function getRedeemEdit(e, type) {
ajax.getCreditScoreRedeemAdd({ ...e }).then((res) => {
let { status, data, total } = res
if (status == 20000) {
@ -331,8 +335,20 @@ function CreditScoreMgm() {
} else {
setAddData(data)
}
getRedeemList({ award: award, pn: 1, page_size: 15 })
setEditVisible({ visible: true, type: 0 })
getRedeemList({ awardId: awardId, pn: 1, page_size: 15 })
if (type == 12) {
return
}
if (type == 1 && editVisible.type == 1) {
message.success("编辑成功")
setEditVisible({ visible: false, type: 0 })
return
}
if (editVisible.type == 0) {
message.success("添加成功")
setEditVisible({ visible: false, type: 0 })
return
}
} else {
setAddData({})
message.error(res.message)
@ -340,12 +356,12 @@ function CreditScoreMgm() {
})
}
//
function setRedeemDel(e) {
function getRedeemDel(e) {
ajax.getCreditScoreRedeemDel(e).then((res) => {
let { status, data, total } = res
if (status == 20000) {
setRedeemPageInfo({ pn: 1, page_size: 15 })
getRedeemList({ award: award, pn: 1, page_size: 15 })
getRedeemList({ awardId: awardId, pn: 1, page_size: 15 })
setTipVisible(false)
} else {
message.error(res.message)
@ -354,9 +370,9 @@ function CreditScoreMgm() {
}
//
const getSelectList = () => {
ajax.getOperator().then((e) => {
ajax.getCreditScoreAward().then((e) => {
setSearchSelectList([
...searchSelectList,
//...searchSelectList,
...e.data
])
})
@ -393,7 +409,7 @@ function CreditScoreMgm() {
type="primary"
style={{ width: '116px' }}
onClick={() => {
getRedeemList({ award: award, pn: 1, page_size: 15 });
getRedeemList({ awardId: awardId, pn: 1, page_size: 15 });
setRedeemVisible(true)
}}
>
@ -454,7 +470,7 @@ function CreditScoreMgm() {
onCancel={() => {
setRedeemVisible(false);
}}
onOk={() => { getRedeemList({ award: award, pn: 1, page_size: 15 }) }}
onOk={() => { getRedeemList({ awardId: awardId, pn: 1, page_size: 15 }) }}
>
<div>
<div className="form-search">
@ -469,14 +485,15 @@ function CreditScoreMgm() {
<div className="form-item">
<span>奖品名称</span>
<Select
value={''}
value={awardId}
placeholder="请选择"
options={[]}
onChange={(e) => { setAward(e) }}
options={searchSelectList || []}
onChange={(e) => { setAwardId(e) }}
fieldNames={{ label: "award", value: "awardId" }}
></Select>
</div>
<div className="search-btn" onClick={() => { getRedeemList({ award: award, pn: 1, page_size: 15 }) }}>查询</div>
<div className="search-btn add-btn" onClick={() => { setRedeemEdit(); setEditVisible({ visible: true, type: 0 }) }}>添加</div>
<div className="search-btn" onClick={() => { getRedeemList({ awardId: awardId, pn: 1, page_size: 15 }) }}>查询</div>
<div className="search-btn add-btn" onClick={() => { setEditVisible({ visible: true, type: 0 }) }}>添加</div>
</div>
<Table
rowKey={(row) => row?.order_id || row?.id || row?.deal_record_id || Math.random() * 10000}
@ -497,7 +514,7 @@ function CreditScoreMgm() {
...redeemPageInfo,
...{ pn: current, page_size: size }
});
getRedeemList({ award: award, pn: current, page_size: size })
getRedeemList({ awardId: awardId, pn: current, page_size: size })
}}
/>
</div>
@ -505,12 +522,12 @@ function CreditScoreMgm() {
<Modal
open={editVisible.visible}
width={550}
title={editVisible.type ? '编辑' : '添加'}
title={editVisible.type == 1 ? '编辑' : '添加'}
className="credit-modal"
onCancel={() => {
setEditVisible({ visible: false, type: 0 })
}}
onOk={() => { setRedeemEdit(addData) }}
onOk={() => { getRedeemEdit(addData, editVisible.type) }}
>
<div className="ltc-box">
<div className="ltc-content">
@ -518,10 +535,11 @@ function CreditScoreMgm() {
<div className="new-item">奖品名称</div>
<div className="new-value">
<Select
value={addData?.award}
value={addData?.awardId}
placeholder="请选择"
options={[]}
onChange={(e) => { setAddData({ ...addData, award: e }) }}
options={searchSelectList.slice(1) || []}
onChange={(e) => { setAddData({ ...addData, awardId: e }) }}
fieldNames={{ label: "award", value: "awardId" }}
></Select>
</div>
</div>
@ -556,7 +574,7 @@ function CreditScoreMgm() {
onCancel={() => {
setTipVisible(false);
}}
onOk={() => { setRedeemDel({ id: awardId }) }}
onOk={() => { getRedeemDel({ id: awardId }) }}
>
<div>
确定要删除该条数据
@ -570,7 +588,7 @@ function CreditScoreMgm() {
onCancel={() => {
setRuleVisible(false);
}}
onOk={() => { setRule() }}
onOk={() => { setRule(1) }}
>
<div className="ltc-box">
<div className="ltc-box-title">

4
src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardMgm/index.scss

@ -57,6 +57,7 @@ $color-primary: var(--color-primary);
.yisa-search {
margin-top: 10px;
display: flex;
justify-content: center;
label {
line-height: 31px;
}
@ -77,6 +78,7 @@ $color-primary: var(--color-primary);
.btnBox {
display: flex;
margin-top: 20px;
.yisa-btn {
margin-left: 20px;
width: 85px;
@ -124,7 +126,7 @@ $color-primary: var(--color-primary);
margin-bottom: 10px;
display: inline-block;
em {
span {
color: #3aa8fe;
margin: 0 5px;
}

14
src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardMgm/loadable.jsx

@ -735,7 +735,7 @@ function ParkingCardMgm(props) {
<div className="paid-search">
<label className="search">查询条件</label>
<div className="yisa-search">
<label>商品名称</label>
<label style={{marginRight:12}}>商品名称</label>
<Input
placeholder="请输入"
value={formData.name}
@ -774,10 +774,10 @@ function ParkingCardMgm(props) {
</div>
<div className="timePicker yisa-search">
<div className="btnBox">
<Button type="primary" className="yisa-btn colorBtn" icon={<SearchOutlined />} onClick={() => { getSearchData() }}>
搜索
<Button type="primary" className="yisa-btn colorBtn" style={{width:85}} icon={<SearchOutlined />} onClick={() => { getSearchData() }}>
查询
</Button>
<Button type="primary" className="yisa-btn colorBtn" icon={<PlusOutlined />} onClick={() => { addData() }}>
<Button type="primary" className="yisa-btn colorBtn" style={{width:110}} icon={<PlusOutlined />} onClick={() => { addData() }}>
添加
</Button>
</div>
@ -785,7 +785,7 @@ function ParkingCardMgm(props) {
</div>
<div className="paid-result">
<div className="result">
<span className="font">共检索到<em>{resultData.total}</em>条结果</span>
<span className="font">共检索到<span>{resultData.total}</span>条结果</span>
<ResultFlowResult ajaxLoad={ajaxLoading} resultData={resultData.data ? resultData.data : []}>
<Table
bordered
@ -1107,9 +1107,9 @@ function ParkingCardMgm(props) {
<em style={{marginRight:'5px',marginLeft:'-13px',color:'red'}}>*</em>
<label>销售价格</label>
<InputNumber
value={checkData.original_price && checkData.discount_amount ?
value={checkData.original_price && checkData.discount_amount !== '' ?
(checkData.original_price - checkData.discount_amount).toFixed(2)
:''
: ''
}
style={{ width: 250, marginLeft: 20 }}
disabled={true}

2
src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardOrder/index.scss

@ -127,7 +127,7 @@ $color-primary : var(--color-primary);
margin-bottom: 10px;
display: inline-block;
em {
span {
color: #3aa8fe;
margin: 0 5px;
}

8
src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardOrder/loadable.jsx

@ -150,7 +150,7 @@ function ParkingCardOrder() {
equipment:"0",//
serial_number:'',//
start_time: moment(moment().startOf("days")).format("YYYY-MM-DD HH:mm:ss"),//
end_time: moment().format("YYYY-MM-DD HH:mm:ss"),//
end_time: moment().format("YYYY-MM-DD 23:59:59"),//
pn: 1,
page_size: Number(pageSizeOptions[0]), //
})
@ -655,7 +655,7 @@ function ParkingCardOrder() {
className="yisa-btn colorBtn"
icon={<SearchOutlined />}
onClick={()=>getSearchData()}>
搜索
查询
</Button>
<Button
type="primary"
@ -663,7 +663,7 @@ function ParkingCardOrder() {
icon={<PlusOutlined />}
onClick={() => {addCardOrder()}}
style={{width:110}}>
添加订单
添加
</Button>
<Button
type="primary"
@ -681,7 +681,7 @@ function ParkingCardOrder() {
<div className="result">
{!isShowDetail ?
<>
<span className="font">共检索到<em>{resultData.total}</em>条结果</span>
<span className="font">共检索到<span>{resultData.total}</span>条结果</span>
<ResultFlowResult ajaxLoad={ajaxLoading} resultData={resultData.data ? resultData.data : []}>
<Table
bordered

2
src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardStat/index.scss

@ -171,7 +171,7 @@ $color-primary : var(--color-primary);
width: 100%;
display: flex;
justify-content: space-evenly;
margin-bottom: 40px;
margin-bottom: 20px;
.data-item{
display: flex;
flex-direction: column;

6
src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardStat/loadable.jsx

@ -40,7 +40,7 @@ function ParkingCardStat() {
//
const [formData, setFormData] = useSetState({
start_date:moment(moment().startOf("days")).format("YYYY-MM-DD HH:mm:ss"), //
end_date:moment().format("YYYY-MM-DD HH:mm:ss") //
end_date:moment().format("YYYY-MM-DD 23:59:59") //
})
const [dataList, setDataList] = useState([])
//
@ -189,7 +189,7 @@ function ParkingCardStat() {
icon={<SearchOutlined />}
style={{width:245}}
onClick={()=>{getStaData()}}>
搜索
查询
</Button>
</div>
</div>
@ -233,7 +233,7 @@ function ParkingCardStat() {
columns={tableColumns}
pagination={false}
loading={ajaxLoading}
scroll={{y:600}}
// scroll={{y:600}}
/>
</ResultFlowResult>
{/* <div className="line-chart">

87
src/pages/OperationCenter/OtherBusiness/Staggered/StaggeredMgm/loadable.jsx

@ -34,6 +34,18 @@ function StaggeredMgm(props) {
const [checkVisible, setCheckVisible] = useState(false)
const [editVisible, setEditVisible] = useState(false)
const [addVisible, setAddVisible] = useState(false)
let infoData = {
start_date: moment().subtract(30, 'days').startOf('day').format('YYYY-MM-DD'),
end_date: moment().format('YYYY-MM-DD'),
start_time: moment().format('HH:mm:ss'),
end_time: moment().format('HH:mm:ss'),
week: '',
num: '',
price: '',
text: '',
}
const [getSaleMsg, setGetSaleMsg] = useState([infoData])
//
const handleParkName = (v) => {
setFormData({ ...formData, road: v.target.value })
@ -95,8 +107,8 @@ function StaggeredMgm(props) {
return <>
<Popover content={
<div className="operateBtn">
<div onClick={() => { CheckBtn(record) }}>查看</div>
<div onClick={() => { translateBtn(record) }}>编辑</div>
<div onClick={() => CheckBtn(record) }>查看</div>
<div onClick={() => translateBtn(record) }>编辑</div>
</div>}>
<button className="scheduleBtn colorBtn">操作</button>
</Popover>
@ -110,14 +122,7 @@ function StaggeredMgm(props) {
setGetRecordData(record)
let str = record.info
let newArr = []
str.forEach(item => {
newArr.push(item)
for (let i = 0; i < newArr.length; i++) {
newArr[i].disabled = true;
}
})
setGetSaleMsg(newArr);
setGetSaleMsg(record.info);
setCheckVisible(true)
}
const checkModal = () => {
@ -231,21 +236,12 @@ function StaggeredMgm(props) {
road: ''
})
}
let infoData = {
start_date: moment().subtract(30, 'days').startOf('day').format('YYYY-MM-DD'),
end_date: moment().format('YYYY-MM-DD'),
start_time: moment().format('HH:mm:ss 00:00:00'),
end_time: moment().format('HH:mm:ss 23:59:59'),
week: '',
num: '',
price: '',
text: '',
}
const [getCarMsg, setGetCarMsg] = useState({
operator_id:'',
road:''
})
const [getSaleMsg, setGetSaleMsg] = useState([infoData])
//
const handleAddDeployType = (value) => {
setGetCarMsg({
@ -302,13 +298,11 @@ function StaggeredMgm(props) {
}
//
const handleChangeTime = (time, timeString, index) => {
console.log(time, timeString, index);
let times = getSaleMsg[index]
times.start_time = timeString[0]
times.end_time = timeString[1]
}
const handleChance = (v, index, key) => {
console.log(v, index, key);
let str = [...getSaleMsg]
if (key == 'num') {
str[index][key] = v
@ -420,14 +414,16 @@ function StaggeredMgm(props) {
})
useEffect(() => {
if (sessionTabList && Object.values(sessionTabList).length > 0) {
setFormData({
road: sessionTabList?.road,
operator_id: sessionTabList?.operator_id,
user: sessionTabList?.user,
pn: sessionTabList?.pn,
page_size: sessionTabList?.page_size,
})
// setFormData({
// road: sessionTabList?.road,
// operator_id: sessionTabList?.operator_id,
// user: sessionTabList?.user,
// pn: sessionTabList?.pn,
// page_size: sessionTabList?.page_size,
// })
}
getData()
merchantDataName()
}, [])
useEffect(() => {
setSessionTabList({
@ -435,8 +431,7 @@ function StaggeredMgm(props) {
})
}, [formData])
useEffect(() => {
getData()
merchantDataName()
}, [])
return <>
<div className="paid-StaggeredMgm">
@ -561,9 +556,8 @@ function StaggeredMgm(props) {
</div>
</div>
{getSaleMsg.length ?
getSaleMsg?.map((item, index) => {
console.log(item);
{getSaleMsg&&getSaleMsg.length ?
getSaleMsg.map((item, index) => {
return (
<>
<div className="carTitle">
@ -578,9 +572,7 @@ function StaggeredMgm(props) {
disabled={true}
defaultValue={[moment(item.start_date), moment(item.end_date)]}
style={{ width: 250, marginLeft: 20 }}
onChange={(date, dateString) => handleChangeDate(
date, dateString, index
)}
onChange={(date, dateString) => handleChangeDate(date, dateString, index)}
/>
</div>
<div className="yisa-search">
@ -588,12 +580,10 @@ function StaggeredMgm(props) {
<label>错峰时间</label>
<TimePicker.RangePicker
disabled={true}
value={[moment(item.start_time), moment(item.end_time)]}
defaultValue={[moment(item.start_time, 'HH:mm:ss'),moment(item.end_time, 'HH:mm:ss')]}
style={{ width: 250, marginLeft: 20 }}
format="HH:mm:ss"
onChange={(time, timeString) => handleChangeTime(
time, timeString, index
)}
onChange={(time, timeString) => handleChangeTime(time, timeString, index)}
/>
</div>
<div className="yisa-search" style={{marginLeft:15}}>
@ -673,14 +663,14 @@ function StaggeredMgm(props) {
}) : ''
}
<div className="submitBtn">
<Button type="primary" className="cancel colorReset" onClick={() => { checkStaggeredBtn() }}>
<Button type="primary" className="cancel colorReset" onClick={checkStaggeredBtn}>
关闭
</Button>
</div>
</Modal>
<Modal
visible={addVisible}
onCancel={addModal}
onCancel={addplaceBtn}
footer={null}
className="staggered-add"
>
@ -837,10 +827,10 @@ function StaggeredMgm(props) {
}
<div className="submitBtn">
<Button type="primary" className="submit colorBtn" onClick={() => { placeSaveBtn() }}>
<Button type="primary" className="submit colorBtn" onClick={placeSaveBtn}>
提交
</Button>
<Button type="primary" className="cancel colorReset" onClick={() => { addplaceBtn() }}>
<Button type="primary" className="cancel colorReset" onClick={addplaceBtn}>
取消
</Button>
</div>
@ -895,9 +885,8 @@ function StaggeredMgm(props) {
</div>
</div>
{getSaleMsg.length ?
{getSaleMsg&&getSaleMsg.length ?
getSaleMsg?.map((item, index) => {
// console.log(item);
return (
<>
<div className="carTitle">
@ -922,7 +911,7 @@ function StaggeredMgm(props) {
<label>错峰时间</label>
<TimePicker.RangePicker
disabled={item.disabled}
defaultValue={[moment(item.start_time), moment(item.end_time)]}
defaultValue={[moment(item.start_time, 'HH:mm:ss'),moment(item.end_time, 'HH:mm:ss')]}
style={{ width: 250, marginLeft: 20 }}
format="HH:mm:ss"
onChange={(time, timeString) => handleChangeTime(

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

@ -746,7 +746,7 @@ function UserInfo() {
ajax({
url: url,
type: "get",
data: { ...pageInfo, memberId: memberId },
data: { ...pageInfo, memberId: memberId, ...e },
}).then((res) => {
let { status, data, total } = res
if (status == 20000) {
@ -1009,6 +1009,7 @@ function UserInfo() {
...pageInfo,
...{ pn: current, length: size }
});
searchLv({ pn: current, length: size })
},
}
//
@ -1158,7 +1159,7 @@ function UserInfo() {
...{ pn: 1, length: 15 }
});
if (tabKey == '6' || tabKey == '7') {
searchLv()
searchLv({ pn: 1, length: 15 })
}
}, [tabKey])

2
src/pages/SystemMgm/BusinessConfig/BusinessConf/loadable.jsx

@ -755,7 +755,7 @@ function BusinessConf(props) {
onCancel={editModal}
footer={null}
className="editMsg"
title='添加/修改管理员'
title='修改管理员'
>
<div className="addAdmin">
<div className="yisa-search">

2
src/pages/SystemMgm/RoleMgm/loadable.jsx

@ -589,7 +589,7 @@ function RoleMgm(props) {
onCancel={imgModal}
footer={null}
className="checkMsg"
title='添加/修改角色'
title='添加角色'
>
<div className="addAdmin">
<div className="yisa-search">

34
src/pages/SystemMgm/SystemLog/loadable.jsx

@ -11,7 +11,8 @@ import "./index.scss";
const SystemLog = () => {
const defaultData = {
menu_id: [], // id
menu_ids: [], // id
menu_id: "", // id
operation_type: "", // id
user_name: "", //
date_type: "1", // 1: 2: 3:
@ -102,14 +103,14 @@ const SystemLog = () => {
const [formData, setFormData] = useState(defaultData); //
const [sessionData, setSessionData] = useSessionStorageState("systemLog", { value: {} }); // session
const [subsystemData, setSubsystemData] = useState([]); //
const [subsystemData, setSubsystemData] = useState([]); //
const [operationTypeData, setOperationTypeData] = useState([]); //
const [loading, setLoading] = useState(false); //
//
const [modalExport, setModalExport] = useState({
open: false,
export_name: moment().format("YYYY-MM-DD"),
export_name: "系统日志 - " + moment().format("YYYY-MM-DD"),
})
//
const [resultData, setResultData] = useState({
@ -135,7 +136,6 @@ const SystemLog = () => {
return { str, mat };
};
//
const $setTimeNow = (e) => {
let start = "";
let end = "";
@ -181,7 +181,7 @@ const SystemLog = () => {
$getTableList(temFormData);
};
//
//
const $subsystemList = () => {
ajax.getSystemLogMenu().then((res) => {
if (res.status === 20000 || res.status == 0) {
@ -240,7 +240,7 @@ const SystemLog = () => {
document.body.removeChild(link);
setModalExport({
open: false,
export_name: moment().format("YYYY-MM-DD"),
export_name: "系统日志 - " + moment().format("YYYY-MM-DD"),
})
} else {
message.error(res.message);
@ -254,7 +254,8 @@ const SystemLog = () => {
let _data = defaultData;
if (sessionData && Object.values(sessionData).length > 0) {
_data = {
menu_id: sessionData?.menu_id || [], // id
menu_ids: sessionData?.menu_ids || [], // id
menu_id: sessionData?.menu_id || "", // id
operation_type: sessionData?.operation_type || "", // id
user_name: sessionData?.user_name || "", //
date_type: sessionData?.date_type || "1", // 1: 2: 3:
@ -280,9 +281,11 @@ const SystemLog = () => {
<div className="title">查询条件</div>
<div className="form-Wrap">
<div className="yisa-search debounce-select">
<label>子系统</label>
<label>功能模块</label>
<Cascader
className="row-lg"
expandTrigger="hover"
changeOnSelect
allowClear
placeholder="请选择"
fieldNames={{
@ -291,8 +294,15 @@ const SystemLog = () => {
children: "children",
}}
options={subsystemData || []}
value={formData?.menu_id || []}
onChange={(e) => setFormData({ ...formData, menu_id: e || [] })}
value={formData?.menu_ids || []}
onChange={(e) => {
let _id = e?.length ? e.slice(-1). join(",") : "";
setFormData({
...formData,
menu_ids: e || [],
menu_id: _id || ""
})
}}
/>
</div>
<div className="yisa-search">
@ -465,7 +475,7 @@ const SystemLog = () => {
onCancel={() => {
setModalExport({
open: false,
export_name: moment().format("YYYY-MM-DD"),
export_name: "系统日志 - " + moment().format("YYYY-MM-DD"),
})
}}
>
@ -487,7 +497,7 @@ const SystemLog = () => {
</div>
<div className="form-btn">
<Button type="primary" onClick={() => $exportSystemLog()}>提交</Button>
<Button onClick={() => setModalExport({ open: false, export_name: moment().format("YYYY-MM-DD")})}>取消</Button>
<Button onClick={() => setModalExport({ open: false, export_name: "系统日志 - " + moment().format("YYYY-MM-DD")})}>取消</Button>
</div>
</Modal>
</div>

22
src/services/OperationCenter/OperationSales/index.js

@ -246,7 +246,7 @@ const handleCountExport = (p) => {
// 信用积分管理-列表
const getCreditScoreList = (p) => {
return ajax({
url: "/api",
url: "/api/ope/credit_system/score_list",
type: "post",
data: p,
});
@ -254,7 +254,7 @@ const getCreditScoreList = (p) => {
// 信用积分管理-使用记录
const getCreditScoreDetailList = (p) => {
return ajax({
url: "/api",
url: "/api/ope/credit_system/usage_list",
type: "post",
data: p,
});
@ -262,7 +262,7 @@ const getCreditScoreDetailList = (p) => {
// 信用积分管理-积分规则配置
const getCreditScoreRule = (p) => {
return ajax({
url: "/api",
url: "/api/ope/credit_system/score_rules_list",
type: "post",
data: p,
});
@ -270,7 +270,7 @@ const getCreditScoreRule = (p) => {
// 信用积分管理-积分兑换配置
const getCreditScoreRedeem = (p) => {
return ajax({
url: "/api",
url: "/api/ope/credit_system/score_redeem_list",
type: "post",
data: p,
});
@ -278,7 +278,7 @@ const getCreditScoreRedeem = (p) => {
// 信用积分管理-积分兑换配置添加和编辑
const getCreditScoreRedeemAdd = (p) => {
return ajax({
url: "/api",
url: "/api/ope/credit_system/score_redeem_edit",
type: "post",
data: p,
});
@ -286,11 +286,20 @@ const getCreditScoreRedeemAdd = (p) => {
// 信用积分管理-积分兑换配置删除
const getCreditScoreRedeemDel = (p) => {
return ajax({
url: "/api",
url: "/api/ope/credit_system/score_redeem_del",
type: "post",
data: p,
});
};
// 信用积分管理-下拉数据
const getCreditScoreAward = (p) => {
return ajax({
url: "/api/ope/credit_system/score_award_list",
type: "get",
data: p,
});
};
export default {
getCouponList,
getCouponOptions,
@ -327,4 +336,5 @@ export default {
getCreditScoreRedeem,
getCreditScoreRedeemAdd,
getCreditScoreRedeemDel,
getCreditScoreAward
};
Loading…
Cancel
Save