From ac75997820e8c1fdaafdeb08507a958f30f8f4ed Mon Sep 17 00:00:00 2001 From: guoxin Date: Mon, 18 Dec 2023 11:27:13 +0800 Subject: [PATCH 1/7] =?UTF-8?q?fix():=E4=BF=AE=E6=94=B9=E8=B7=AF=E5=86=85B?= =?UTF-8?q?UG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/SystemMgm/RoleMgm/loadable.jsx | 39 +++++++++++++++++++++++++------- 1 file changed, 31 insertions(+), 8 deletions(-) diff --git a/src/pages/SystemMgm/RoleMgm/loadable.jsx b/src/pages/SystemMgm/RoleMgm/loadable.jsx index 76e9d6a..70d0fe2 100644 --- a/src/pages/SystemMgm/RoleMgm/loadable.jsx +++ b/src/pages/SystemMgm/RoleMgm/loadable.jsx @@ -68,7 +68,7 @@ function RoleMgm(props) { let arr = e let lastElement = arr[arr.length - 1]; setGetGovernment(lastElement) - setAddManage({ ...addManage, depart_id: lastElement }) + setAddManage({ ...addManage, depart_id: e }) }; const [getGovernmentArea, setGetGovernmentArea] = useState([]) @@ -176,8 +176,11 @@ function RoleMgm(props) { }, [checkedKeys]) //添加提交 const placeSaveBtn = () => { + let arr = addManage.depart_id + let lastElement = arr[arr.length - 1]; let data = { - ...addManage + ...addManage, + depart_id:lastElement } let reg = /^ [\s]*$/; @@ -361,7 +364,14 @@ function RoleMgm(props) { const delcancelImg = () => { setEditVisible(false) setCheckedKeys([]) + setGetAuthId({}) setGetGovernment(0) + setAddManage({ + remark: '', + name: '', + depart_id: '', + auth: '' + }) } // 获取列表数据 const getData = (data = formData) => { @@ -415,6 +425,13 @@ function RoleMgm(props) { const editModal = () => { setEditVisible(false) setCheckedKeys([]) + setGetAuthId({}) + setAddManage({ + remark: '', + name: '', + depart_id: '', + auth: '' + }) setGetGovernment(0) } //编辑提交 @@ -435,12 +452,19 @@ function RoleMgm(props) { setEditVisible(false) getData(formData) setGetGovernment(0) + setGetAuthId({}) setGetImg({ remark: '', name: '', depart_id: '', auth: '' }) + setAddManage({ + remark: '', + name: '', + depart_id: '', + auth: '' + }) } else { message.error(res.message) setGetGovernment(0) @@ -459,12 +483,12 @@ function RoleMgm(props) { } // const [getKey,setGetKey]=useState([]) useEffect(() => { - // let arrStr = addManage.depart_id - // let lastElement = addManage[arrStr.length - 1]; + let arrStr = addManage.depart_id + let lastElement = addManage[arrStr.length - 1]; // console.log(addManage); if (getGovernment != 0) { let data = { - id: addManage.depart_id, + id: getGovernment, auth:getAuthId } ajax.getDepartId(data).then(res => { @@ -587,7 +611,7 @@ function RoleMgm(props) { { - setGetGovernment(v) setGetImg( Object.assign({}, getImg, { depart_id: v }) ); let arrStr = v let lastElement = arrStr[arrStr.length - 1]; - setAddManage({ ...addManage, depart_id: lastElement}) + setGetGovernment(lastElement) }} fieldNames={{ label: 'name', From ccc1f8768827944c3fa976f59650521c0066efc3 Mon Sep 17 00:00:00 2001 From: xingjx Date: Mon, 18 Dec 2023 11:27:48 +0800 Subject: [PATCH 2/7] =?UTF-8?q?fix():=E5=95=86=E5=93=81=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OrderInquiry/ProductOrderInquiry/index.jsx | 218 ++++----------------- 1 file changed, 37 insertions(+), 181 deletions(-) diff --git a/src/pages/FinancialMgm/OrderInquiry/ProductOrderInquiry/index.jsx b/src/pages/FinancialMgm/OrderInquiry/ProductOrderInquiry/index.jsx index 80b99e7..37ff5fd 100644 --- a/src/pages/FinancialMgm/OrderInquiry/ProductOrderInquiry/index.jsx +++ b/src/pages/FinancialMgm/OrderInquiry/ProductOrderInquiry/index.jsx @@ -115,76 +115,20 @@ function ProductOrderInquiry() { return arr } //所有检索条件 - const ash = [ - {//1 - name: "region", - type: "TreeSelect", - label: "区域", - }, - {//2 - name: "operator", - type: "Select", - label: "商户名称", - options: dictionary.MerchantName, - }, - {//3 - name: "road", + const carash = [ + { + name: "plate_number", type: "Input", - label: "停车场名称", - placeholder: "请输入停车场名称", - }, - {//4 - name: "road_type", - type: "Select", - label: "车场类型", - options: [ - { - label: "全部", - value: 0, - }, - { - label: "路侧平行", - value: 1, - }, - { - label: "路侧垂停", - value: 2, - }, - { - label: "封闭车场", - value: 3, - }, - { - label: "半封闭车场", - value: 4, - }, - ], + label: "车牌号", + placeholder: "请输入车牌号", }, - {//5 + { name: "phone", type: "Input", label: "手机号", placeholder: "请输入手机号", }, - {//6 - name: "type", - type: "Select", - label: "出入场类型", - placeholder: "请选择出入场类型", - defaultValue: 1, - options: [ - { - label: "入场", - value: 1, - }, - { - label: "出场", - value: 2, - }, - ], - }, - - {//7 + { name: "goods_name", type: "Input", label: "商品名称", @@ -248,52 +192,32 @@ function ProductOrderInquiry() { placeholder: "请选择支付设备", options: sysConfig.Equipment }, - {//12 - name: "pay_type", - type: "Select", - label: "支付方式", - placeholder: "请选择支付方式", - options: dictionary.PaydMethod, - }, - {//13 + { name: "timePeriod", type: "RangePicker", label: "时间段", + defaultTitle: ['支付时间', '至'], defaultValue: [moment().startOf("day"), moment()], }, - {//14 - name: "b", - type: "Select", - label: "退款方式", - placeholder: "请选择退款方式", - options: dictionary.PaydMethod, - }, - {//15 + { name: "channel_serial_number", type: "Input", label: "渠道流水号", placeholder: "请输入渠道流水号", }, - {//16 - name: "timePeriod", - type: "RangePicker", - label: "时间段", - defaultTitle: ['支付时间', '至'], - defaultValue: [moment().startOf("day"), moment()], - }, - {//17 - name: "timePeriod", - type: "RangePicker", - label: "时间段", - defaultTitle: ['订购时间', '至'] - // defaultValue: [moment().startOf("day"), moment()], + ]; + const cfkash = [ + { + name: "parking_name", + type: "Input", + label: "停车场名称", + placeholder: "请输入停车场名称", }, - {//18 - name: "timePeriod", - type: "RangePicker", - label: "时间段", - defaultTitle: ['预约到场时间', '至'] - // defaultValue: [moment().startOf("day"), moment()], + { + name: "phone", + type: "Input", + label: "手机号", + placeholder: "请输入手机号", }, {//19 name: "plate_number", @@ -301,89 +225,25 @@ function ProductOrderInquiry() { label: "车牌号", placeholder: "请输入车牌号", }, - {//20 - name: "order_id", - type: "Input", - label: "支付订单ID", - placeholder: "请输入支付订单ID", - }, - {//21 - name: "berth_id", - type: "Input", - label: "泊位号", - placeholder: "请输入泊位号", - }, - {//22 - name: "t", + { + name: "pay_channel", type: "Select", - label: "所属商户", - placeholder: "请选择所属商户", - options: dictionary.MerchantName, - }, - {//23 - name: "t", - type: "Input", - label: "预付订单ID", - placeholder: "请输入订单ID", - }, - {//24 - name: "t", - type: "Input", - label: "停车记录ID", - placeholder: "停车记录ID", - }, - {//25 - name: "dealer", - type: "Input", - label: "操作人", - placeholder: "请输入操作人", - }, - {//26 - name: "t", - type: "Input", - label: "停车订单ID", - placeholder: "停车订单ID", - }, - {//27 - name: "t", - type: "Input", - label: "欠费区间", - placeholder: "", + label: "支付方式", + placeholder: "请选择支付方式", + options: dictionary.PaydMethod, }, - {//28 + { name: "timePeriod", type: "RangePicker", label: "时间段", - defaultTitle: ['订单修改时间', '至'], - defaultValue: [moment().startOf("day"), moment()], + defaultTitle: ['订购时间', '至'] + // defaultValue: [moment().startOf("day"), moment()], }, - {//29 - name: "b", - type: "Select", - label: "修改原因", - placeholder: "请选择修改原因", - options: [ - { - label: "全部", - value: 0, - }, - { - label: "重复支付退款", - value: 2, - }, - { - label: "异常支付退款", - value: 7, - }, - { - label: "异常订单处理", - value: 11, - }, - { - label: "自动平单退款", - value: 12, - }, - ], + { + name: "channel_serial_number", + type: "Input", + label: "渠道流水号", + placeholder: "请输入渠道流水号", }, ]; const [resultData, setResultData] = useState([]) @@ -536,8 +396,6 @@ function ProductOrderInquiry() { pay_channel: '', order_status: '', pay_device: '', - //start_time: '', - //end_time: '', channel_serial_number: '', export: '0', export_file_name: '' @@ -548,8 +406,6 @@ function ProductOrderInquiry() { phone: '', parking_name: '', pay_channel: '', - //start_time: '', - //end_time: '', channel_serial_number: '', export: '0', export_file_name: '', @@ -816,7 +672,7 @@ function ProductOrderInquiry() { {tabKey == 1 ? renderTable( createCol(['车牌号', '车牌颜色', '手机号', '商品名称', '实付金额', '支付渠道', '支付设备', '购买渠道', '支付时间', '订单状态', '渠道流水号'], ['plate_number', 'plate_type', 'phone', 'goods_name', 'pay_amount', 'pay_channel', 'pay_device', 'buy_channel', 'pay_time', 'order_status_text', 'channel_serial_number'], 1), - [ash[18], ash[4], ash[6], ash[7], ash[8], ash[9], ash[10], ash[15], ash[14]], + carash, resultData, '停车卡', "/api/fin/order_search/parking_card_order_list"//停车卡订单 ) : null} @@ -825,7 +681,7 @@ function ProductOrderInquiry() { {tabKey == 2 ? renderTable( createCol(['序号', '停车场名称', '车牌号', '手机号', '订单金额', '支付方式', '渠道流水号', '同步MS状态', '订购时间'], ['id', 'parking_name', 'plate_number', 'phone', 'pay_amount', 'pay_method', 'channel_serial_number', 'status', 'pay_time'], 2), - [ash[2], ash[4], ash[18], ash[11], ash[16], ash[14]], + cfkash, resultData, '错峰卡', "/api/fin/order_search/staggered_parking_order_list"//错峰卡 ) : null} From ecaf91891ef5e8507b7b051580f29b40da8724a1 Mon Sep 17 00:00:00 2001 From: lisf Date: Mon, 18 Dec 2023 11:31:01 +0800 Subject: [PATCH 3/7] =?UTF-8?q?fix():=20=E8=BD=A6=E7=89=8C=E9=A2=9C?= =?UTF-8?q?=E8=89=B2=E9=80=89=E9=A1=B9=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../OtherBusiness/ParkingCard/ParkingCardOrder/loadable.jsx | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardOrder/loadable.jsx b/src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardOrder/loadable.jsx index a8c2545..ebac4cf 100644 --- a/src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardOrder/loadable.jsx +++ b/src/pages/OperationCenter/OtherBusiness/ParkingCard/ParkingCardOrder/loadable.jsx @@ -903,10 +903,6 @@ function ParkingCardOrder() { { value: '4', label: '黑' - }, - { - value: '5', - label: '黑' } ]} onChange={(e) => {setAddOrderData({plate_type:e})}} From b935555ce3d05921cbda100775a209f32d8b6745 Mon Sep 17 00:00:00 2001 From: chenqiang Date: Mon, 18 Dec 2023 12:07:32 +0800 Subject: [PATCH 4/7] =?UTF-8?q?fix():=20=E5=A4=84=E7=90=86=E5=A4=A7?= =?UTF-8?q?=E5=B1=8F=E9=BB=98=E8=AE=A4=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ParkingOverview/loadable.jsx | 69 ++++++++++++---------- 1 file changed, 39 insertions(+), 30 deletions(-) diff --git a/src/pages/DataAnalysisPrediction/ParkingOverview/loadable.jsx b/src/pages/DataAnalysisPrediction/ParkingOverview/loadable.jsx index 0331cf1..086ad90 100644 --- a/src/pages/DataAnalysisPrediction/ParkingOverview/loadable.jsx +++ b/src/pages/DataAnalysisPrediction/ParkingOverview/loadable.jsx @@ -430,7 +430,7 @@ const ParkingOverview = connect(function mapStateToProps(state) { const [CarRoad, setCarRoad] = useState([ { label: "西海岸新区", - value: "1", + value: "0", type: 1, }, ]); @@ -578,12 +578,12 @@ const ParkingOverview = connect(function mapStateToProps(state) { const SelectDay = (str, val) => { if (str == 1) { setDaySel(val); - if (CarRoad[CarShow].type == 1) { + if (CarRoad[CarShow]?.type == 1) { GetComplaintType(RoadSelect, val); } } else if (str == 2) { setDaySet(val); - if (CarRoad[CarShow].type == 2) { + if (CarRoad[CarShow]?.type == 2) { GetincomeType(RoadSelect, val); } else { GetParkingEvaluate(RoadSelect, val); @@ -1374,8 +1374,8 @@ const ParkingOverview = connect(function mapStateToProps(state) { const GetOverviewData = (val) => { ajax.ParkingOverview.GetOverviewData({ type: val, - areaType: CarRoad[CarShow].type, - value: CarRoad[CarShow].value, + areaType: CarRoad[CarShow]?.type, + value: CarRoad[CarShow]?.value, }).then( (res) => { if (parseInt(res?.status) === 20000) { @@ -1394,8 +1394,8 @@ const ParkingOverview = connect(function mapStateToProps(state) { //车场总数 单独提供给区大屏 const GetParkinfo = () => { ajax.ParkingOverview.GetParkinfo({ - areaType: CarRoad[CarShow].type, - value: CarRoad[CarShow].value, + areaType: CarRoad[CarShow]?.type, + value: CarRoad[CarShow]?.value, }).then( (res) => { if (parseInt(res?.status) === 20000) { @@ -1415,8 +1415,8 @@ const ParkingOverview = connect(function mapStateToProps(state) { const GetUseInfo = (val) => { ajax.ParkingOverview.GetUseInfo({ type: val, - areaType: CarRoad[CarShow].type, - value: CarRoad[CarShow].value, + areaType: CarRoad[CarShow]?.type, + value: CarRoad[CarShow]?.value, }).then( (res) => { if (parseInt(res?.status) === 20000) { @@ -1464,8 +1464,17 @@ const ParkingOverview = connect(function mapStateToProps(state) { ajax.ParkingOverview.GetAreaShop().then( (res) => { if (parseInt(res?.status) === 20000) { - setCarRoad(res?.data || []); + setCarRoad( + res?.data || [ + { + label: "西海岸新区", + value: "0", + type: 1, + }, + ] + ); } else { + message.error(res?.message); } setLoading(true); @@ -1498,8 +1507,8 @@ const ParkingOverview = connect(function mapStateToProps(state) { const getMapData = (val) => { ajax.ParkingOverview.getMapData({ type: val, - areaType: CarRoad[CarShow].type, - value: CarRoad[CarShow].value, + areaType: CarRoad[CarShow]?.type, + value: CarRoad[CarShow]?.value, }).then( (res) => { if (parseInt(res?.status) === 20000) { @@ -1555,8 +1564,8 @@ const ParkingOverview = connect(function mapStateToProps(state) { const GetDataStatic = (val) => { ajax.ParkingOverview.GetDataStatic({ type: val, - areaType: CarRoad[CarShow].type, - value: CarRoad[CarShow].value, + areaType: CarRoad[CarShow]?.type, + value: CarRoad[CarShow]?.value, }).then( (res) => { if (parseInt(res?.status) === 20000) { @@ -1576,8 +1585,8 @@ const ParkingOverview = connect(function mapStateToProps(state) { //获取收费top5 const GetrateRank = () => { ajax.ParkingOverview.GetrateRank({ - areaType: CarRoad[CarShow].type, - value: CarRoad[CarShow].value, + areaType: CarRoad[CarShow]?.type, + value: CarRoad[CarShow]?.value, }).then( (res) => { if (parseInt(res?.status) === 20000) { @@ -1599,8 +1608,8 @@ const ParkingOverview = connect(function mapStateToProps(state) { ajax.ParkingOverview.GetincomeType({ type: val, dateType: item, - areaType: CarRoad[CarShow].type, - value: CarRoad[CarShow].value, + areaType: CarRoad[CarShow]?.type, + value: CarRoad[CarShow]?.value, }).then( (res) => { if (parseInt(res?.status) === 20000) { @@ -1622,8 +1631,8 @@ const ParkingOverview = connect(function mapStateToProps(state) { ajax.ParkingOverview.GetRevenueAnalysis({ type: val, dateType: item, - areaType: CarRoad[CarShow].type, - value: CarRoad[CarShow].value, + areaType: CarRoad[CarShow]?.type, + value: CarRoad[CarShow]?.value, }).then( (res) => { if (parseInt(res?.status) === 20000) { @@ -1645,8 +1654,8 @@ const ParkingOverview = connect(function mapStateToProps(state) { ajax.ParkingOverview.GetParkingEvaluate({ type: val, dateType: item, - areaType: CarRoad[CarShow].type, - value: CarRoad[CarShow].value, + areaType: CarRoad[CarShow]?.type, + value: CarRoad[CarShow]?.value, }).then( (res) => { if (parseInt(res?.status) === 20000) { @@ -1668,8 +1677,8 @@ const ParkingOverview = connect(function mapStateToProps(state) { ajax.ParkingOverview.GetComplaintType({ type: val, dateType: item, - areaType: CarRoad[CarShow].type, - value: CarRoad[CarShow].value, + areaType: CarRoad[CarShow]?.type, + value: CarRoad[CarShow]?.value, }).then( (res) => { if (parseInt(res?.status) === 20000) { @@ -1778,7 +1787,7 @@ const ParkingOverview = connect(function mapStateToProps(state) { // GetDataStatic(RoadSelect); GetUseInfo(RoadSelect); GetRevenueAnalysis(RoadSelect, "1"); - if (CarRoad[CarShow].type == 2) { + if (CarRoad[CarShow]?.type == 2) { GetrateRank(); GetincomeType(RoadSelect, "1"); GetOverviewData(RoadSelect); @@ -1812,7 +1821,7 @@ const ParkingOverview = connect(function mapStateToProps(state) {
停车业务概览
- {CarRoad[CarShow].type == 2 + {CarRoad[CarShow]?.type == 2 ? LeftShow.map((ele) => { return (
: ""}
- {CarRoad[CarShow].type == 2 ? ( + {CarRoad[CarShow]?.type == 2 ? (
收费员排行Top5
@@ -2113,8 +2122,8 @@ const ParkingOverview = connect(function mapStateToProps(state) { )}
- {CarRoad[CarShow].type == 2 ? "营业收入分析" : "车场服务评价"} - {CarRoad[CarShow].type == 1 && ( + {CarRoad[CarShow]?.type == 2 ? "营业收入分析" : "车场服务评价"} + {CarRoad[CarShow]?.type == 1 && ( 统计范围内用户对车场进行评价的不同分值占比} @@ -2138,7 +2147,7 @@ const ParkingOverview = connect(function mapStateToProps(state) { ); })}
- {CarRoad[CarShow].type == 1 ? ( + {CarRoad[CarShow]?.type == 1 ? (
) : ( Date: Mon, 18 Dec 2023 12:36:00 +0800 Subject: [PATCH 5/7] =?UTF-8?q?fix:=20=E5=90=8E=E7=AB=AF=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E7=9A=84=E6=97=A5=E6=9C=9F=E6=98=AF=E5=B9=B4=E6=9C=88=E6=97=A5?= =?UTF-8?q?,=20=E5=89=8D=E7=AB=AF=E4=BB=A3=E7=A0=81=E5=8F=AA=E5=88=A4?= =?UTF-8?q?=E6=96=AD=E4=BA=86=E6=9C=88=E6=97=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/SystemMgm/BusinessConfig/VacationConf/loadable.jsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/pages/SystemMgm/BusinessConfig/VacationConf/loadable.jsx b/src/pages/SystemMgm/BusinessConfig/VacationConf/loadable.jsx index a9b8ee9..6577755 100644 --- a/src/pages/SystemMgm/BusinessConfig/VacationConf/loadable.jsx +++ b/src/pages/SystemMgm/BusinessConfig/VacationConf/loadable.jsx @@ -130,7 +130,7 @@ function VacationConf() { }; const onPanelChange = (e,a)=>{ - console.log(e,a , 'aaaa',e.years(), e.months()) + // console.log(e,a , 'aaaa',e.years(), e.months()) let tempdate = { year: e.years() + '', month: e.months() + 1 + '' @@ -140,7 +140,7 @@ function VacationConf() { } const dateFullCellRender = (date)=>{ - let temp = date.format('MM-DD'),highlight = false,temp_vc_name = ''; + let temp = date.format('YYYY-MM-DD'),highlight = false,temp_vc_name = ''; if(vacationData.length){ let one = vacationData.find(item=> item.day == temp) if(one){ From fb97f343577779450abbe3c37c3b9d502b0332dd Mon Sep 17 00:00:00 2001 From: chenglb Date: Mon, 18 Dec 2023 12:58:06 +0800 Subject: [PATCH 6/7] =?UTF-8?q?fix:=20=E7=83=AD=E9=97=A8=E5=95=86=E5=9C=88?= =?UTF-8?q?=E9=85=8D=E7=BD=AE,=20=E6=89=80=E5=B1=9E=E5=8C=BA=E5=9F=9F?= =?UTF-8?q?=E4=B8=8D=E8=83=BD=E8=AE=BE=E7=BD=AE=E9=BB=98=E8=AE=A4=E5=80=BC?= =?UTF-8?q?0,=200=E6=98=AF=E4=B8=8D=E5=AD=98=E5=9C=A8=E7=9A=84=E5=80=BC,?= =?UTF-8?q?=20=E5=BC=80=E5=8F=91=E7=8E=AF=E5=A2=83=E6=9C=89,=20=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E7=8E=AF=E5=A2=83=E6=B2=A1=E6=9C=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/pages/SystemMgm/BusinessConfig/HotCbdConf/loadable.jsx | 12 ++++++------ src/pages/SystemMgm/BusinessConfig/VacationConf/loadable.jsx | 6 +++++- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/src/pages/SystemMgm/BusinessConfig/HotCbdConf/loadable.jsx b/src/pages/SystemMgm/BusinessConfig/HotCbdConf/loadable.jsx index 6a26acd..b625cf6 100644 --- a/src/pages/SystemMgm/BusinessConfig/HotCbdConf/loadable.jsx +++ b/src/pages/SystemMgm/BusinessConfig/HotCbdConf/loadable.jsx @@ -33,7 +33,7 @@ function HotCbdConf() { defaultValue:{} }) const [formData, setFormData] = useSetState({ - area: defaultParams.formParams?.area ? defaultParams.formParams.area : '0', + area: defaultParams.formParams?.area ? defaultParams.formParams.area : '', name: defaultParams.formParams?.name ? defaultParams.formParams.name : '', }) @@ -159,7 +159,7 @@ function HotCbdConf() { setDetailVisible(false) setModalFormData({ name: '', - area: '0', + area: '', center_name: '' }) message.success('编辑商圈成功') @@ -174,7 +174,7 @@ function HotCbdConf() { setDetailVisible(false) setModalFormData({ name: '', - area: '0', + area: '', center_name: '' }) search(Object.assign({},formData, pageData)) @@ -191,7 +191,7 @@ function HotCbdConf() { setCurrentRecord(record) setModalFormData({ name: record.name, - area: parseInt(record.area_id) ? record.area_id : '0' , + area: parseInt(record.area_id) ? record.area_id : '' , center_name: record.center_name }) setDetailVisible(true) @@ -227,10 +227,10 @@ function HotCbdConf() { const reset = ()=>{ setFormData({ name: '', - area: '0' + area: '' }) setPageData({...pageData, pn: 1}) - search({name: '', area: '0', pn: 1, size: pageData.size}) + search({name: '', area: '', pn: 1, size: pageData.size}) } const addConfig = ()=>{ diff --git a/src/pages/SystemMgm/BusinessConfig/VacationConf/loadable.jsx b/src/pages/SystemMgm/BusinessConfig/VacationConf/loadable.jsx index 6577755..05ee5bb 100644 --- a/src/pages/SystemMgm/BusinessConfig/VacationConf/loadable.jsx +++ b/src/pages/SystemMgm/BusinessConfig/VacationConf/loadable.jsx @@ -85,6 +85,8 @@ function VacationConf() { message.success('新增成功') setModalVisible(false) getVacationData() + }else{ + message.error(res.message) } }).catch(err=>{ @@ -102,6 +104,8 @@ function VacationConf() { message.success('修改成功') setModalVisible(false) getVacationData() + }else{ + message.error(res.message) } }).catch(err=>{ @@ -118,7 +122,7 @@ function VacationConf() { } const onChange = (value, mode) => { - let temp = value.format('MM-DD') + let temp = value.format('YYYY-MM-DD') if(vacationData.length){ let one = vacationData.find(item=> item.day == temp) if(one){ From ced2b500ffe3b5ccb729fcfcb9be8e5e15ceb050 Mon Sep 17 00:00:00 2001 From: guoxin Date: Mon, 18 Dec 2023 14:01:38 +0800 Subject: [PATCH 7/7] =?UTF-8?q?fix():=E4=BF=AE=E6=94=B9=E8=B7=AF=E5=86=85B?= =?UTF-8?q?UG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../InRoadMgm/BusinessMgm/FreeRule/index.scss | 328 +++++++++-------- .../InRoadMgm/BusinessMgm/FreeRule/loadable.jsx | 404 +++++++++++++++++---- .../InRoadMgm/PersonMgm/ReportMsg/loadable.jsx | 2 +- .../OperationCenter/CarMgm/CarInfo/loadable.jsx | 7 + src/services/search.js | 11 +- 5 files changed, 528 insertions(+), 224 deletions(-) diff --git a/src/pages/InRoadMgm/BusinessMgm/FreeRule/index.scss b/src/pages/InRoadMgm/BusinessMgm/FreeRule/index.scss index d000ed3..0587c45 100644 --- a/src/pages/InRoadMgm/BusinessMgm/FreeRule/index.scss +++ b/src/pages/InRoadMgm/BusinessMgm/FreeRule/index.scss @@ -1,136 +1,146 @@ @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); - - -.paid-FreeRule{ - display: flex; - padding: 15px; - width: 100%; - .paid-search{ - .search{ - font-size: 16px; - font-family: Microsoft YaHei, Microsoft YaHei-Bold; - font-weight: 700; - text-align: left; - color: #eeeff1; - } - label{ - margin:0 10px; - } - .yisa-search{ - margin-top: 10px; - display: flex; - label{ - line-height: 31px; +.paid-FreeRule { + .tabchange{ + width: 400px; + } + .searchResult { + display: flex; + padding: 15px; + width: 100%; + .paid-search { + .search { + font-size: 16px; + font-family: + Microsoft YaHei, + Microsoft YaHei-Bold; + font-weight: 700; + text-align: left; + color: #eeeff1; } - } - .ant-select:not(.ant-select-customize-input) .ant-select-selector{ - background-color: #50586c !important; - } - .ant-select-arrow .anticon{ - background-color: #50586c !important; - } - .ant-input:placeholder-shown{ - background-color: #50586c !important; - } - .timePicker{ - width: 350px; - margin-top: 22px; - .btnBox{ - display:flex ; + label { + margin: 0 10px; + } + .yisa-search { + margin-top: 10px; + display: flex; + label { + line-height: 31px; + } + } + .ant-select:not(.ant-select-customize-input) .ant-select-selector { + background-color: #50586c !important; + } + .ant-select-arrow .anticon { + background-color: #50586c !important; + } + .ant-input:placeholder-shown { + background-color: #50586c !important; + } + .timePicker { + width: 350px; + margin-top: 22px; + .btnBox { + display: flex; margin-top: 20px; - .yisa-btn{ + .yisa-btn { margin-left: 20px; height: 36px; border: none; width: 150px; } - .root_gfkk{ + .root_gfkk { margin-left: 20px; - .export-content{ - width: 130px; - height: 33px; - display: flex; - align-items: center; - justify-content: center; - background: #3b97ff; - border-radius: 3px; - cursor: pointer; - color: #fff; - margin-right: 10px; - } + .export-content { + width: 130px; + height: 33px; + display: flex; + align-items: center; + justify-content: center; + background: #3b97ff; + border-radius: 3px; + cursor: pointer; + color: #fff; + margin-right: 10px; + } } - } + } } } - - .paid-result{ + .paid-result { width: 100%; height: 800px; background: #505a6f; border-radius: 20px; margin-left: 17px; - .result{ + .result { padding: 25px; - .font{ - font-family: Microsoft YaHei, Microsoft YaHei-Regular; + .font { + font-family: + Microsoft YaHei, + Microsoft YaHei-Regular; font-weight: 400; text-align: left; color: #eeeff1; margin-bottom: 10px; display: inline-block; - - em{ + + em { color: #3aa8fe; margin: 0 5px; } } - .yisa-table .ant-table-thead .ant-table-cell{ + .yisa-table .ant-table-thead .ant-table-cell { background-color: #616b83 !important; - color: #ffffff !important; - font-size: 14px; - font-family: Microsoft YaHei, Microsoft YaHei-Bold; - font-weight: 700; + color: #ffffff !important; + font-size: 14px; + font-family: + Microsoft YaHei, + Microsoft YaHei-Bold; + font-weight: 700; text-align: center; border-right: none !important; border-top-color: #888f9d !important; border-color: #888f9d !important; } - .ant-table.ant-table-bordered>.ant-table-container>.ant-table-content>table, .ant-table.ant-table-bordered>.ant-table-container>.ant-table-header>table{ + .ant-table.ant-table-bordered > .ant-table-container > .ant-table-content > table, + .ant-table.ant-table-bordered > .ant-table-container > .ant-table-header > table { border-top: none !important; border-left: none !important; } - .ant-table-tbody .ant-table-row .ant-table-cell{ + .ant-table-tbody .ant-table-row .ant-table-cell { background-color: #3e4557 !important; color: #ffffff !important; text-align: center; font-size: 14px; - font-family: Microsoft YaHei, Microsoft YaHei-Regular; + font-family: + Microsoft YaHei, + Microsoft YaHei-Regular; font-weight: 400; border-right: none !important; border-left: none !important; border-bottom-color: #626b7e !important; } } - } - } -.revenue{ - .tab-title{ +.revenue { + .tab-title { text-align: center; font-size: 18px; font-weight: 400; - font-family: Microsoft YaHei, Microsoft YaHei-Regular; + font-family: + Microsoft YaHei, + Microsoft YaHei-Regular; } width: 700px !important; - .tab-index{ - .tab-top{ + .tab-index { + .tab-top { display: flex; margin-top: 10px; height: 30px; @@ -138,25 +148,27 @@ $color-primary : var(--color-primary); white-space: nowrap; overflow: hidden; border-bottom: 1px solid #e4e7ed; - .tab-li{ + .tab-li { margin-left: 20px; cursor: pointer; } - .active{ - color:#409eff ; + .active { + color: #409eff; cursor: pointer; margin-left: 20px; border-bottom: 1px solid #409eff !important; margin-bottom: -1px !important; } } - .tab-bottom{ - .yisa-tab{ - .ant-table-cell{ + .tab-bottom { + .yisa-tab { + .ant-table-cell { background-color: #616b83 !important; color: #ffffff !important; font-size: 14px; - font-family: Microsoft YaHei, Microsoft YaHei-Bold; + font-family: + Microsoft YaHei, + Microsoft YaHei-Bold; font-weight: 700; text-align: center; border-right: none !important; @@ -167,33 +179,33 @@ $color-primary : var(--color-primary); } } } -.freeModal{ +.freeModal { width: 810px !important; - .yisa-search{ + .yisa-search { margin-top: 10px; display: flex; - label{ + label { line-height: 31px; } - .pdaPic{ + .pdaPic { margin-left: 34px; - label{ + label { color: #5a99ff; cursor: pointer; } } - .add{ + .add { width: 80px; - color: black; - margin-left: 30px; + color: black; + margin-left: 30px; } - .redLogo{ + .redLogo { line-height: 37px; } } - .yisa-delete{ + .yisa-delete { margin-left: 27%; - .addDelete{ + .addDelete { margin-top: 15px; display: flex; width: 300px; @@ -203,105 +215,105 @@ $color-primary : var(--color-primary); justify-content: space-between; line-height: 30px; border: 1px solid gray; - .delete{ + .delete { color: #5a99ff; cursor: pointer; } } } - .submitBtn{ + .submitBtn { text-align: center; margin-top: 20px; - .submit{ + .submit { width: 80px; - height: 35px; - background: #409eff; - border: none; - border-radius: 4px; - cursor: pointer; - color: #fff; + height: 35px; + background: #409eff; + border: none; + border-radius: 4px; + cursor: pointer; + color: #fff; } - .cancel{ - width: 80px; - height: 35px; - background: #fff; - border: none; - border-radius: 4px; - cursor: pointer; - margin-left: 20px; + .cancel { + width: 80px; + height: 35px; + background: #fff; + border: none; + border-radius: 4px; + cursor: pointer; + margin-left: 20px; } } } -.freeModalData{ - .name{ +.freeModalData { + .name { margin: 10px; } - .type{ + .type { margin: 10px; } - .submitBtn{ + .submitBtn { text-align: center; margin-top: 20px; - .submit{ + .submit { width: 80px; - height: 35px; - background: #409eff; - border: none; - border-radius: 4px; - cursor: pointer; - color: #fff; + height: 35px; + background: #409eff; + border: none; + border-radius: 4px; + cursor: pointer; + color: #fff; } - .cancel{ - width: 80px; - height: 35px; - background: #fff; - border: none; - border-radius: 4px; - cursor: pointer; - margin-left: 20px; + .cancel { + width: 80px; + height: 35px; + background: #fff; + border: none; + border-radius: 4px; + cursor: pointer; + margin-left: 20px; } } } -.apyPicModal{ +.apyPicModal { width: 390px !important; } -.blackRecordBtn{ +.blackRecordBtn { background: #409eff; - border: none; - border-radius: 4px; - cursor: pointer; + border: none; + border-radius: 4px; + cursor: pointer; } -.black{ - div{ +.black { + div { cursor: pointer; margin-top: 5px; } } -.deleteModal{ - .font{ +.deleteModal { + .font { font-size: 18px; text-align: center; } - .submitBtn{ + .submitBtn { text-align: center; margin-top: 20px; - .submit{ + .submit { width: 80px; - height: 35px; - background: #409eff; - border: none; - border-radius: 4px; - cursor: pointer; - color: #fff; + height: 35px; + background: #409eff; + border: none; + border-radius: 4px; + cursor: pointer; + color: #fff; } - .cancel{ - width: 80px; - height: 35px; - background: #fff; - border: none; - border-radius: 4px; - cursor: pointer; - margin-left: 20px; + .cancel { + width: 80px; + height: 35px; + background: #fff; + border: none; + border-radius: 4px; + cursor: pointer; + margin-left: 20px; } } -} \ No newline at end of file +} diff --git a/src/pages/InRoadMgm/BusinessMgm/FreeRule/loadable.jsx b/src/pages/InRoadMgm/BusinessMgm/FreeRule/loadable.jsx index 98c91e8..b529d5c 100644 --- a/src/pages/InRoadMgm/BusinessMgm/FreeRule/loadable.jsx +++ b/src/pages/InRoadMgm/BusinessMgm/FreeRule/loadable.jsx @@ -1,6 +1,6 @@ import React, { useState, useRef, useEffect } from "react"; -import { ResultFlowResult } from "@/components" -import { Select, Input, Button, Table, message, Pagination, Popover, Modal, Checkbox, Radio } from 'antd' +import { ResultFlowResult ,FormSliderPicker } from "@/components" +import { Select, Input, Button, Tabs, Table, message, Pagination, Popover, Modal, DatePicker, Radio } from 'antd' import { pageSizeOptions } from '@/config/character.config.js' @@ -8,6 +8,9 @@ import "./index.scss"; import { SearchOutlined } from '@ant-design/icons'; import ajax from '@/services' import { useSessionStorageState } from "ahooks" +import moment from "moment"; +const { RangePicker } = DatePicker; +const { TabPane } = Tabs; const { TextArea } = Input; function FreeRule(props) { const [ajaxLoading, setAjaxLoading] = useState(false) @@ -20,11 +23,19 @@ function FreeRule(props) { const parameter = { operate_name: '0',//所属商户 pn: 1, + road: '',//路段 + berth: '',//泊位 + plate: '',//车牌号 + start_time: moment().format('YYYY-MM-DD 00:00:00'), + end_time: moment().format("YYYY-MM-DD 23:59:59"), + tab: '1', page_size: Number(pageSizeOptions[0]), // 每页条数 } const [formData, setFormData] = useState(parameter) const [lastFormData, setLastFormData] = useState(formData) + const [parkFormData, setParkFormData] = useState(formData) const lastFormDataRef = useRef(formData) + const parkFormDataRef = useRef(formData) const [addVisible, setAddVisible] = useState(false) const [picVisible, setPicVisible] = useState(false) const [checkVisible, setCheckVisible] = useState(false) @@ -34,6 +45,26 @@ function FreeRule(props) { const handleOperator = (v) => { setFormData({ ...formData, operate_name: v }) } + //车牌号 + const handlePlate = (v) => { + setFormData({ ...formData, plate: v.target.value }) + } + //路段 + const handleRoad = (v) => { + setFormData({ ...formData, road: v.target.value }) + } + //泊位 + const handleBreth = (v) => { + setFormData({ ...formData, berth: v.target.value }) + } + //进场时间 + const onHandleDateChange = (v) => { + setFormData({ + ...formData, + start_time: v.startDateTime, + end_time: v.endDateTime + }) + } //列表 const handleColumns = (tab) => { let result = [...deployListColumns]; @@ -78,6 +109,77 @@ function FreeRule(props) { }, },] + // 切换Tab + const changeTab = (key) => { + let obj = Object.assign({}, parameter, { + tab: key, + }) + setFormData(JSON.parse(JSON.stringify(obj))) + + lastFormDataRef.current = obj + if (key === '1') { + getData(obj) + } + if (key === '2') { + getParkDataList(obj) + } + + } + const handleApplyColumns = (tab) => { + let result = [...applyColumns]; + return result; + } + const applyColumns = [ + { + title: "序号", + render: (text, record, index) => index + 1, + }, + { + title: "车牌号", + dataIndex: 'plate', + key: 'plate', + }, { + title: "车牌颜色", + dataIndex: 'plate_color', + key: 'plate_color', + }, { + title: "车辆类型", + dataIndex: 'car_type', + key: 'car_type', + }, { + title: "路段", + dataIndex: 'road', + key: 'road', + }, { + title: "泊位", + dataIndex: 'berth', + key: 'berth', + }, { + title: "进场时间", + dataIndex: 'come_time', + key: 'come_time', + }, { + title: "离场时间", + dataIndex: 'leave_time', + key: 'leave_time', + }, + { + title: "停车时长", + dataIndex: 'park_time', + key: 'park_time', + }, + { + title: "进场收费员", + dataIndex: 'come_person', + key: 'come_person', + }, + { + title: "离场收费员", + dataIndex: 'leave_person', + key: 'leave_person', + } + ] + console.log(formData); const [getCheckList, setGetCheckList] = useState({}) const checkBtn = (record) => { let data = { @@ -94,8 +196,8 @@ function FreeRule(props) { setCheckVisible(false) } const [getEditList, setGetEditList] = useState({ - operate_name:'', - free_name:'' + operate_name: '', + free_name: '' }) const [getEditId, setGetEditId] = useState({}) const deleteApplyBtn = (record) => { @@ -159,6 +261,33 @@ function FreeRule(props) { console.log(err) }) } + const getParkDataList = (data = formData) => { + setAjaxLoading(true) + ajax.getAddFreePartList(data).then(res => { + setAjaxLoading(false) + if (res.status === 20000) { + let resDataArr = res.data.list.map((item) => { + item.key = item.id + return item + }) + setResultData({ + ...resultData, + data: resDataArr, + total_records: res.data.total_records + }) + } else { + setResultData({ + data: [], + total_records: 0, + export_url: '', + process_url: "" + }) + message.error(res.message) + } + }, err => { + console.log(err) + }) + } //切换分页 const changePn = (pn, length) => { if (lastFormData.page_size === length) { @@ -168,6 +297,14 @@ function FreeRule(props) { getData(Object.assign({}, formData, { pn: pn, page_size: length })) } } + const changeParkPn = (pn, length) => { + if (parkFormData.page_size === length) { + setFormData(Object.assign({}, formData, { pn: pn, page_size: length })) + setParkFormData(Object.assign({}, parkFormData, { pn: pn, page_size: length })) + parkFormDataRef.current = Object.assign({}, parkFormData, { pn: pn, page_size: length }) + getParkDataList(Object.assign({}, formData, { pn: pn, page_size: length })) + } + } //切换每页条数 const changeLength = (pn, length) => { setFormData(Object.assign({}, formData, { pn: 1, page_size: length })) @@ -175,10 +312,27 @@ function FreeRule(props) { lastFormDataRef.current = Object.assign({}, lastFormData, { pn: 1, page_size: length }) getData(Object.assign({}, formData, { pn: 1, page_size: length })) } + const changeParkLength = (pn, length) => { + setFormData(Object.assign({}, formData, { pn: 1, page_size: length })) + setParkFormData(Object.assign({}, parkFormData, { pn: 1, page_size: length })) + parkFormDataRef.current = Object.assign({}, parkFormData, { pn: 1, page_size: length }) + getParkDataList(Object.assign({}, formData, { pn: 1, page_size: length })) + } //检索数据 const getSearchData = (data = formData) => { getData(data) } + const getParkData = (data = formData) => { + getParkDataList(data) + } + //重置数据 + const resetData = () => { + setFormData({ + ...parameter, + tab: '2' + }) + getParkDataList({ ...parameter }) + } const [getPicList, setGetPicList] = useState({}) //配置预付费 const configuration = () => { @@ -227,14 +381,9 @@ function FreeRule(props) { } const handleDelete = (index) => { getFreeList.splice(index) - console.log(index); let arr = getFreeList setGetFreeList([...arr]) } - useEffect(() => { - console.log(getFreeList); - - }, [getFreeList]) const addSubmit = () => { let data = { operate_name: getCheckData.operate_name, @@ -276,7 +425,15 @@ function FreeRule(props) { useEffect(() => { if (sessionTabList && Object.values(sessionTabList).length > 0) { setFormData({ - operate_name: sessionTabList?.operate_name + operate_name: sessionTabList?.operate_name, + pn: sessionTabList?.pn, + road: sessionTabList?.road, + berth: sessionTabList?.berth, + plate: sessionTabList?.plate, + start_time: sessionTabList?.start_time, + end_time: sessionTabList?.end_time, + tab: sessionTabList?.tab, + page_size: sessionTabList?.page_size, }) } }, []) @@ -294,26 +451,26 @@ function FreeRule(props) { message.error('请选择所属商户') } else if (getEditList.free_name === '') { message.error('请输入免费类型') - } else{ + } else { ajax.getAddEditFree(data).then(res => { if (res.status === 20000) { setEditVisible(false) getData(formData) setGetFreeList([]) - }else{ + } else { message.error(res.message) } }) } - + } - const editcancel=()=>{ + const editcancel = () => { setEditVisible(false) setGetFreeList([]) } const cancel = () => { setCheckVisible(false) - + setDeleteVisible(false) } const picCheckModal = () => { @@ -335,59 +492,178 @@ function FreeRule(props) { }, []) return <>
-
- -
- - +
: '' + } + { + formData.tab === '2' ? +
+ + +
: '' + } + { + formData.tab === '2' ? +
+ + +
: '' + } + { + formData.tab === '2' ? +
+ + +
: '' + } + { + formData.tab === '2' ? +
+ {/* */} + +
: '' + } +
+ { + formData.tab === '1' ? +
+ + +
: '' + } + { + formData.tab === '2' ? +
+ + +
: '' + }
-
-
-
- 共检索到{resultData.total_records}条结果 - - +
+ + + {formData.tab === '1' ? + <> + 共检索到{resultData.total_records}条结果 +
record.cap_id + "_" + record.bk_id} + pagination={false} + loading={ajaxLoading} + /> + `共 ${resultData.total_records} 条`} + total={resultData.total_records} + current={lastFormData.pn} + pageSize={lastFormData.page_size} + pageSizeOptions={pageSizeOptions} + onChange={changePn} + onShowSizeChange={changeLength} + /> + : '' + + } + {formData.tab === '2' ? + <> + 共检索到{resultData.total_records}条结果 +
record.cap_id + "_" + record.bk_id} + pagination={false} + loading={ajaxLoading} + /> + `共 ${resultData.total_records} 条`} + total={resultData.total_records} + current={parkFormData.pn} + pageSize={parkFormData.page_size} + pageSizeOptions={pageSizeOptions} + onChange={changeParkPn} + onShowSizeChange={changeParkLength} + /> + : '' + } - // rowKey={record => record.cap_id + "_" + record.bk_id} - pagination={false} - loading={ajaxLoading} - /> - `共 ${resultData.total_records} 条`} - total={resultData.total_records} - current={lastFormData.pn} - pageSize={lastFormData.page_size} - pageSizeOptions={pageSizeOptions} - onChange={changePn} - onShowSizeChange={changeLength} - /> - + + + +
-
*
+
*
{ - window.open(res.export_url) + window.open(res.url) }) } //列表 diff --git a/src/pages/OperationCenter/CarMgm/CarInfo/loadable.jsx b/src/pages/OperationCenter/CarMgm/CarInfo/loadable.jsx index cae7845..e6e2246 100644 --- a/src/pages/OperationCenter/CarMgm/CarInfo/loadable.jsx +++ b/src/pages/OperationCenter/CarMgm/CarInfo/loadable.jsx @@ -58,6 +58,13 @@ function CarInfo() { align: "center", }, { + title: "PDA录入号码", + dataIndex: "pda_mobile", + key: "pda_mobile", + fixed: "right", + align: "center", + }, + { title: "行驶本认证", dataIndex: "authStateName", key: "authStateName", diff --git a/src/services/search.js b/src/services/search.js index d047067..5a306c3 100644 --- a/src/services/search.js +++ b/src/services/search.js @@ -1017,6 +1017,14 @@ const getAddFreeList = (params) => { data: params, }); }; +//业务管理-免费规则-公车停车记录 +const getAddFreePartList = (params) => { + return ajax({ + url: "/api/bpm/freeparkingrule/free_parking_record", + type: "post", + data: params, + }); +}; //业务管理-异常停车数据 const getPartList = (params) => { return ajax({ @@ -1130,7 +1138,7 @@ const getBerthWarningListExport = (params) => { //设备运维-预警上报列表 const getReportList = (params) => { return ajax({ - url: "/api/bpm/berthoperation/get_report_list", + url: "/api/bpm/user/get_report_list", type: "post", data: params, }); @@ -1242,6 +1250,7 @@ export default { getAddCheckFree, getAddDetailFree, getAddFreeList, + getAddFreePartList, getPartList, getPartSearchList, getAbnormalList,