|
@@ -2,7 +2,7 @@
|
|
|
<!-- 收费标准 -->
|
|
|
<view class="charge">
|
|
|
<view class="charge-rules-container" v-for="(item, index) in chargeRulesInfo" :key="index">
|
|
|
- <view class="charge-rules-list">
|
|
|
+ <view class="charge-rules-list" v-if="item.list.length">
|
|
|
<view class="charge-rule-list-header">
|
|
|
<view class="charge-type">
|
|
|
<text v-if="item.feePeriod == 1">节假日规则</text>
|
|
@@ -36,8 +36,8 @@
|
|
|
</view>
|
|
|
</view>
|
|
|
</view>
|
|
|
- <view class="charge-instructions">
|
|
|
- <u-parse :html="chargeContent"></u-parse>
|
|
|
+ <view class="charge-instructions ql-editor">
|
|
|
+ <u-parse :html="chargeContent" />
|
|
|
</view>
|
|
|
</view>
|
|
|
</template>
|
|
@@ -47,7 +47,7 @@ export default {
|
|
|
data() {
|
|
|
return {
|
|
|
roadNo: '',
|
|
|
- parkNo: '',
|
|
|
+ parkNo: '',
|
|
|
info: {
|
|
|
freeTime: '',
|
|
|
topAmt: ''
|
|
@@ -64,10 +64,10 @@ export default {
|
|
|
this.getSystems(3);
|
|
|
this.getChargeRulesInfo(roadNo);
|
|
|
} else if (parkNo) {
|
|
|
- this.parkNo = parkNo;
|
|
|
- this.getSystems(3);
|
|
|
- this.getParkingChargeRulesInfo(parkNo);
|
|
|
- } else {
|
|
|
+ this.parkNo = parkNo;
|
|
|
+ this.getSystems(3);
|
|
|
+ this.getParkingChargeRulesInfo(parkNo);
|
|
|
+ } else {
|
|
|
uni.showToast({
|
|
|
title: '参数丢失,返回上一个页面',
|
|
|
duration: 2000,
|
|
@@ -76,164 +76,130 @@ export default {
|
|
|
});
|
|
|
}
|
|
|
},
|
|
|
- onShow() {},
|
|
|
methods: {
|
|
|
/**
|
|
|
* 获取收费标准
|
|
|
* {roadNo} 路段
|
|
|
* */
|
|
|
- getChargeRulesInfo(roadNo) {
|
|
|
- this.$u.api.roadChargeRule({ roadNo }).then((res) => {
|
|
|
- if (res.code === 200) {
|
|
|
- // 数据整合后
|
|
|
- let chargeRulesArr = [];
|
|
|
- for (let i = 0; i < res.data.length; i++) {
|
|
|
- let item = res.data[i];
|
|
|
- this.info.freeTime = res.data[0].freeTime;
|
|
|
- this.info.topAmt = res.data[0].topAmt;
|
|
|
- const obj = {
|
|
|
- feeName: item.feeName,
|
|
|
- feeNo: item.feeNo,
|
|
|
- feePeriod: item.feePeriod,
|
|
|
- feeStep: item.feeStep,
|
|
|
- feeType: item.feeType,
|
|
|
- freeTime: item.freeTime,
|
|
|
- topAmt: item.topAmt,
|
|
|
- id: item.id,
|
|
|
- list: [],
|
|
|
- repeatList: [] // 用来检验已存在
|
|
|
+ async getChargeRulesInfo(roadNo) {
|
|
|
+ const { code, data } = await this.$u.api.roadChargeRule({ roadNo });
|
|
|
+ if (code === 200) {
|
|
|
+ let chargeRulesArr = [];
|
|
|
+ for (let i = 0; i < data.length; i++) {
|
|
|
+ let item = data[i];
|
|
|
+ this.info.freeTime = data[0].freeTime;
|
|
|
+ this.info.topAmt = data[0].topAmt;
|
|
|
+ const obj = {
|
|
|
+ feeName: item.feeName,
|
|
|
+ feeNo: item.feeNo,
|
|
|
+ feePeriod: item.feePeriod,
|
|
|
+ feeStep: item.feeStep,
|
|
|
+ feeType: item.feeType,
|
|
|
+ freeTime: item.freeTime,
|
|
|
+ topAmt: item.topAmt,
|
|
|
+ id: item.id,
|
|
|
+ list: [],
|
|
|
+ repeatList: [] // 用来检验已存在
|
|
|
+ };
|
|
|
+ for (let j = 0; j < item.vehicleRules.length; j++) {
|
|
|
+ let jItem = item.vehicleRules[j];
|
|
|
+ const obj1 = {
|
|
|
+ amt: jItem.amt,
|
|
|
+ beginTime: jItem.beginTime,
|
|
|
+ endTime: jItem.endTime,
|
|
|
+ vehicleFeeNo: jItem.vehicleFeeNo,
|
|
|
+ vehicleType: jItem.vehicleType,
|
|
|
+ list: []
|
|
|
};
|
|
|
- for (let j = 0; j < item.vehicleRules.length; j++) {
|
|
|
- let jItem = item.vehicleRules[j];
|
|
|
- const obj1 = {
|
|
|
- amt: jItem.amt,
|
|
|
- beginTime: jItem.beginTime,
|
|
|
- endTime: jItem.endTime,
|
|
|
- vehicleFeeNo: jItem.vehicleFeeNo,
|
|
|
- vehicleType: jItem.vehicleType,
|
|
|
- list: []
|
|
|
- };
|
|
|
- if (obj.repeatList.indexOf(jItem.vehicleType) === -1) {
|
|
|
- obj.repeatList.push(jItem.vehicleType);
|
|
|
- obj1.list.push(jItem);
|
|
|
- } else {
|
|
|
- for (let k = 0; k < item.vehicleRules.length; k++) {
|
|
|
- if (obj1.vehicleType === item.vehicleRules[k].vehicleType) {
|
|
|
- obj1.list.push(item.vehicleRules[k]);
|
|
|
- obj.list.push(obj1);
|
|
|
- }
|
|
|
+ if (obj.repeatList.indexOf(jItem.vehicleType) === -1) {
|
|
|
+ obj.repeatList.push(jItem.vehicleType);
|
|
|
+ obj1.list.push(jItem);
|
|
|
+ } else {
|
|
|
+ for (let k = 0; k < item.vehicleRules.length; k++) {
|
|
|
+ if (obj1.vehicleType === item.vehicleRules[k].vehicleType) {
|
|
|
+ obj1.list.push(item.vehicleRules[k]);
|
|
|
+ obj.list.push(obj1);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- // 存在重复,去除重复操作
|
|
|
- let obj2 = {};
|
|
|
- obj.list = obj.list.reduce((cur, next) => {
|
|
|
- obj[next.vehicleType] ? '' : (obj[next.vehicleType] = true && cur.push(next));
|
|
|
- return cur;
|
|
|
- }, []);
|
|
|
- chargeRulesArr.push(obj);
|
|
|
}
|
|
|
- this.chargeRulesInfo = chargeRulesArr;
|
|
|
- } else {
|
|
|
- uni.showToast({
|
|
|
- title: `${res.msg}`,
|
|
|
- duration: 3000,
|
|
|
- icon: 'none',
|
|
|
- mask: true
|
|
|
- });
|
|
|
+ // 存在重复,去除重复操作
|
|
|
+ obj.list = obj.list.reduce((cur, next) => {
|
|
|
+ obj[next.vehicleType] ? '' : (obj[next.vehicleType] = true && cur.push(next));
|
|
|
+ return cur;
|
|
|
+ }, []);
|
|
|
+ chargeRulesArr.push(obj);
|
|
|
}
|
|
|
- });
|
|
|
+ this.chargeRulesInfo = chargeRulesArr;
|
|
|
+ }
|
|
|
},
|
|
|
- /**
|
|
|
- * 获取收费标准
|
|
|
- * {roadNo} 路段
|
|
|
- * */
|
|
|
- getParkingChargeRulesInfo(parkNo) {
|
|
|
- this.$u.api.parkingLotChargeRule({ parkNo }).then((res) => {
|
|
|
- if (res.code === 200) {
|
|
|
- // 数据整合后
|
|
|
- let chargeRulesArr = [];
|
|
|
- for (let i = 0; i < res.data.length; i++) {
|
|
|
- let item = res.data[i];
|
|
|
- this.info.freeTime = res.data[0].freeTime;
|
|
|
- this.info.topAmt = res.data[0].topAmt;
|
|
|
- const obj = {
|
|
|
- feeName: item.feeName,
|
|
|
- feeNo: item.feeNo,
|
|
|
- feePeriod: item.feePeriod,
|
|
|
- feeStep: item.feeStep,
|
|
|
- feeType: item.feeType,
|
|
|
- freeTime: item.freeTime,
|
|
|
- topAmt: item.topAmt,
|
|
|
- id: item.id,
|
|
|
- list: [],
|
|
|
- repeatList: [] // 用来检验已存在
|
|
|
- };
|
|
|
- for (let j = 0; j < item.vehicleRules.length; j++) {
|
|
|
- let jItem = item.vehicleRules[j];
|
|
|
- const obj1 = {
|
|
|
- amt: jItem.amt,
|
|
|
- beginTime: jItem.beginTime,
|
|
|
- endTime: jItem.endTime,
|
|
|
- vehicleFeeNo: jItem.vehicleFeeNo,
|
|
|
- vehicleType: jItem.vehicleType,
|
|
|
- list: []
|
|
|
- };
|
|
|
- if (obj.repeatList.indexOf(jItem.vehicleType) === -1) {
|
|
|
- obj.repeatList.push(jItem.vehicleType);
|
|
|
- obj1.list.push(jItem);
|
|
|
- } else {
|
|
|
- for (let k = 0; k < item.vehicleRules.length; k++) {
|
|
|
- if (obj1.vehicleType === item.vehicleRules[k].vehicleType) {
|
|
|
- obj1.list.push(item.vehicleRules[k]);
|
|
|
- obj.list.push(obj1);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- // 存在重复,去除重复操作
|
|
|
- let obj2 = {};
|
|
|
- obj.list = obj.list.reduce((cur, next) => {
|
|
|
- obj[next.vehicleType] ? '' : (obj[next.vehicleType] = true && cur.push(next));
|
|
|
- return cur;
|
|
|
- }, []);
|
|
|
- chargeRulesArr.push(obj);
|
|
|
- }
|
|
|
- this.chargeRulesInfo = chargeRulesArr;
|
|
|
- } else {
|
|
|
- uni.showToast({
|
|
|
- title: `${res.msg}`,
|
|
|
- duration: 3000,
|
|
|
- icon: 'none',
|
|
|
- mask: true
|
|
|
- });
|
|
|
- }
|
|
|
- });
|
|
|
- },
|
|
|
/**
|
|
|
* 获取收费标准
|
|
|
+ * {roadNo} 路段
|
|
|
* */
|
|
|
- getSystems(termsType) {
|
|
|
- this.$u.api
|
|
|
- .getSystems({
|
|
|
- termsType: Number(termsType)
|
|
|
- })
|
|
|
- .then((res) => {
|
|
|
- if (res.code === 200) {
|
|
|
- this.chargeContent = res.data?.content;
|
|
|
- } else {
|
|
|
- this.$refs.uToast.show({
|
|
|
- title: res.msg,
|
|
|
- type: 'error'
|
|
|
- });
|
|
|
+ async getParkingChargeRulesInfo(parkNo) {
|
|
|
+ const { code, data } = await this.$u.api.parkingLotChargeRule({ parkNo });
|
|
|
+ if (code === 200) {
|
|
|
+ // 数据整合后
|
|
|
+ let chargeRulesArr = [];
|
|
|
+ for (let i = 0; i < data.length; i++) {
|
|
|
+ let item = data[i];
|
|
|
+ this.info.freeTime = data[0].freeTime;
|
|
|
+ this.info.topAmt = data[0].topAmt;
|
|
|
+ const obj = {
|
|
|
+ feeName: item.feeName,
|
|
|
+ feeNo: item.feeNo,
|
|
|
+ feePeriod: item.feePeriod,
|
|
|
+ feeStep: item.feeStep,
|
|
|
+ feeType: item.feeType,
|
|
|
+ freeTime: item.freeTime,
|
|
|
+ topAmt: item.topAmt,
|
|
|
+ id: item.id,
|
|
|
+ list: [],
|
|
|
+ repeatList: [] // 用来检验已存在
|
|
|
+ };
|
|
|
+ for (let j = 0; j < item.vehicleRules.length; j++) {
|
|
|
+ let jItem = item.vehicleRules[j];
|
|
|
+ const obj1 = {
|
|
|
+ amt: jItem.amt,
|
|
|
+ beginTime: jItem.beginTime,
|
|
|
+ endTime: jItem.endTime,
|
|
|
+ vehicleFeeNo: jItem.vehicleFeeNo,
|
|
|
+ vehicleType: jItem.vehicleType,
|
|
|
+ list: []
|
|
|
+ };
|
|
|
+ if (obj.repeatList.indexOf(jItem.vehicleType) === -1) {
|
|
|
+ obj.repeatList.push(jItem.vehicleType);
|
|
|
+ obj1.list.push(jItem);
|
|
|
+ } else {
|
|
|
+ for (let k = 0; k < item.vehicleRules.length; k++) {
|
|
|
+ if (obj1.vehicleType === item.vehicleRules[k].vehicleType) {
|
|
|
+ obj1.list.push(item.vehicleRules[k]);
|
|
|
+ obj.list.push(obj1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
- })
|
|
|
- .catch((err) => {
|
|
|
- this.$refs.uToast.show({
|
|
|
- title: '系统错误!',
|
|
|
- type: 'error'
|
|
|
- });
|
|
|
- });
|
|
|
+ // 存在重复,去除重复操作
|
|
|
+ obj.list = obj.list.reduce((cur, next) => {
|
|
|
+ obj[next.vehicleType] ? '' : (obj[next.vehicleType] = true && cur.push(next));
|
|
|
+ return cur;
|
|
|
+ }, []);
|
|
|
+ chargeRulesArr.push(obj);
|
|
|
+ }
|
|
|
+ this.chargeRulesInfo = chargeRulesArr;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ /**
|
|
|
+ * @description: 获取收费标准
|
|
|
+ * @param {*} termsType
|
|
|
+ * @return {*}
|
|
|
+ */
|
|
|
+ async getSystems(termsType) {
|
|
|
+ const { code, data } = await this.$u.api.getSystems({ termsType: Number(termsType) });
|
|
|
+ if (code === 200) {
|
|
|
+ this.chargeContent = data?.content;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
};
|