运营区域配置信息表单优化
This commit is contained in:
parent
4d6f8bbb30
commit
0742a2e5cb
@ -444,7 +444,7 @@ const handleOkFeeModal = () => {
|
||||
* @param record
|
||||
*/
|
||||
const regionConfigInfo = (record) => {
|
||||
modalOperateKey.value = getGUID();
|
||||
// modalOperateKey.value = getGUID();
|
||||
openTitleConfig.value = "运营配置 - " + record['regionName']
|
||||
openConfig.value = true
|
||||
nextTick(() => {
|
||||
@ -461,7 +461,7 @@ const regionConfigInfo = (record) => {
|
||||
*/
|
||||
const handleOkConfgModal = () => {
|
||||
formModelConfig.value.formSave((data => {
|
||||
openConfig.value = false;
|
||||
// openConfig.value = false;
|
||||
if (data['code'] == 200) {
|
||||
getData()
|
||||
} else {
|
||||
|
||||
@ -78,7 +78,10 @@
|
||||
|
||||
</template>
|
||||
<template v-if=" column.type == 'time'">
|
||||
<TimeRangePicker v-model:value="record[column.dataIndex]" />
|
||||
<TimeRangePicker
|
||||
valueFormat="HH:mm:ss"
|
||||
v-model:value="record[column.dataIndex]"
|
||||
/>
|
||||
</template>
|
||||
<template v-if=" column.type == 'input'">
|
||||
<a-input
|
||||
@ -111,13 +114,14 @@
|
||||
|
||||
<script setup>
|
||||
import { ref, defineProps } from 'vue'
|
||||
import { getGUID } from '@/utils/tools';
|
||||
import { TimeRangePicker } from 'ant-design-vue'
|
||||
import _ from 'lodash'
|
||||
import { callOperate } from '@/apis/call.js'
|
||||
|
||||
const formRef = ref();
|
||||
const form = ref({
|
||||
customerServiceConfig: []
|
||||
customerServiceConfig: [],
|
||||
tableName: 'reqEbikeSysLinktelDto'
|
||||
});
|
||||
const columns = ref([
|
||||
{
|
||||
@ -129,10 +133,10 @@ const columns = ref([
|
||||
},
|
||||
{
|
||||
title: '客服电话',
|
||||
key: 'customerServicePhone',
|
||||
key: 'telnum',
|
||||
width: 200,
|
||||
align: 'center',
|
||||
dataIndex: 'customerServicePhone',
|
||||
dataIndex: 'telnum',
|
||||
type: 'input'
|
||||
},
|
||||
{
|
||||
@ -152,11 +156,15 @@ const columns = ref([
|
||||
}])
|
||||
|
||||
const addRecord = () => {
|
||||
form.value.customerServiceConfig.push({
|
||||
key: getGUID(),
|
||||
phase: "",
|
||||
customerServicePhone: "",
|
||||
workTime: "",
|
||||
callOperate("/ebikesysrcostset/createSnowflakeId", {}, "get").then(res => {
|
||||
if (res.code == 200) {
|
||||
form.value.customerServiceConfig.push({
|
||||
key: res.data,
|
||||
phase: "",
|
||||
telnum: "",
|
||||
workTime: "",
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@ -177,12 +185,36 @@ const remove = (val, filed, array) => {
|
||||
const validateForm = async () => {
|
||||
await formRef.value.validate();
|
||||
form.value.tableName = 'reqEbikeSysLinktelDto'
|
||||
return form.value;
|
||||
const formData = _.cloneDeep(form.value);
|
||||
formData['customerServiceConfig'].map(item => {
|
||||
item['worktimeStart'] = item['workTime'][0];
|
||||
item['worktimeEnd'] = item['workTime'][1];
|
||||
delete item['workTime'];
|
||||
delete item['key'];
|
||||
delete item['phase'];
|
||||
})
|
||||
return formData;
|
||||
}
|
||||
|
||||
const loadFormData = (formData) => {
|
||||
if (formData) {
|
||||
form.value = formData
|
||||
} else {
|
||||
callOperate("/ebikesysrcostset/createSnowflakeId", {}, "get").then(res => {
|
||||
if (res.code == 200) {
|
||||
form.value['id'] = res.data;
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
const getFormData = () => {
|
||||
return _.cloneDeep(form.value);
|
||||
}
|
||||
|
||||
const resetFormValue = () => {
|
||||
formRef.value.resetFields()
|
||||
}
|
||||
|
||||
defineExpose({ validateForm, resetFormValue });
|
||||
defineExpose({ validateForm, resetFormValue, loadFormData, getFormData });
|
||||
</script>
|
||||
|
||||
@ -156,14 +156,15 @@
|
||||
|
||||
<script setup>
|
||||
import { ref, defineProps } from 'vue'
|
||||
import _ from 'lodash'
|
||||
import { callOperate } from '@/apis/call.js'
|
||||
const formRef = ref();
|
||||
const form = ref({});
|
||||
const form = ref({
|
||||
tableName: 'reqEbikeSysRlocksetDto'
|
||||
});
|
||||
const autoReturn = ref(false);
|
||||
const autoLock = ref(false);
|
||||
|
||||
|
||||
|
||||
|
||||
const changeAutoReturnType = (e) => {
|
||||
const value = e.target.value;
|
||||
if (value == '1') {
|
||||
@ -177,13 +178,28 @@ const changeAutoReturnType = (e) => {
|
||||
|
||||
const validateForm = async () => {
|
||||
await formRef.value.validate();
|
||||
form.value.tableName = 'reqEbikeSysRlocksetDto'
|
||||
return form.value;
|
||||
return _.cloneDeep(form.value);
|
||||
}
|
||||
|
||||
const loadFormData = (formData) => {
|
||||
if (formData) {
|
||||
form.value = formData
|
||||
} else {
|
||||
callOperate("/ebikesysrcostset/createSnowflakeId", {}, "get").then(res => {
|
||||
if (res.code == 200) {
|
||||
form.value['id'] = res.data;
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
const getFormData = () => {
|
||||
return _.cloneDeep(form.value);
|
||||
}
|
||||
|
||||
const resetFormValue = () => {
|
||||
formRef.value.resetFields()
|
||||
}
|
||||
|
||||
defineExpose({ validateForm, resetFormValue });
|
||||
defineExpose({ validateForm, resetFormValue, loadFormData, getFormData });
|
||||
</script>
|
||||
|
||||
@ -57,10 +57,13 @@ const customerServiceForm = ref(null);
|
||||
const isAdd = ref(true);
|
||||
const spinning = ref(false);
|
||||
const tipContent = ref("加载中...");
|
||||
const regionId = ref(null);
|
||||
|
||||
const openForm = (params = {}) => {
|
||||
isAdd.value = true;
|
||||
const forms = [switchForm, operateForm, useCarForm, lockCarForm, returnCarForm, customerServiceForm];
|
||||
if (params['regionId']) {
|
||||
regionId.value = params['regionId'];
|
||||
spinning.value = true;
|
||||
callOperate("/ebikeSysRoperateset/getRegionConfigById?regionId="
|
||||
+ params['regionId'], {}, "get").then(res => {
|
||||
@ -68,7 +71,18 @@ const openForm = (params = {}) => {
|
||||
if (res.code == 200) {
|
||||
if (res.data) {
|
||||
isAdd.value = false;
|
||||
|
||||
forms.map(form => {
|
||||
Object.keys(res.data).forEach((key) => {
|
||||
const data = form.value.getFormData();
|
||||
if (key == data['tableName']) {
|
||||
form.value.loadFormData(res.data[key]);
|
||||
}
|
||||
})
|
||||
})
|
||||
} else {
|
||||
forms.map(form => {
|
||||
form.value.loadFormData();
|
||||
})
|
||||
}
|
||||
} else {
|
||||
message.error(res.message);
|
||||
@ -88,10 +102,19 @@ const formSave = (onCallBack) => {
|
||||
if (tableName == "reqEbikeSysLinktelDto") {
|
||||
params['reqEbikeSysRoperatesetDto'] = { ...params['reqEbikeSysRoperatesetDto'], onlineService: res['onlineService'] };
|
||||
params[tableName] = res['customerServiceConfig'];
|
||||
} else if (tableName == "reqEbikeSysRoperatesetDto") {
|
||||
delete res['tableName'];
|
||||
params[tableName] = { ...params['reqEbikeSysRoperatesetDto'], ...res };
|
||||
if (params[tableName]['operateTime']) {
|
||||
params[tableName]['operateTime'].map(item => {
|
||||
item['regionId'] = regionId.value;
|
||||
})
|
||||
}
|
||||
} else {
|
||||
delete res['tableName'];
|
||||
params[tableName] = res;
|
||||
}
|
||||
params[tableName]['regionId'] = regionId.value;
|
||||
}).catch((e) => {
|
||||
return Promise.reject(e);
|
||||
});
|
||||
@ -105,6 +128,9 @@ const formSave = (onCallBack) => {
|
||||
if (!isAdd.value) {
|
||||
url = "update"
|
||||
}
|
||||
if (params['reqEbikeSysRoperatesetDto']['rechargeRule']) {
|
||||
params['reqEbikeSysRoperatesetDto']['rechargeRule'] = params['reqEbikeSysRoperatesetDto']['rechargeRule'].map(item => item.value);
|
||||
}
|
||||
// isAdd.value = false;
|
||||
callOperate("/ebikeSysRoperateset/" + url, params).then(res => {
|
||||
spinning.value = false;
|
||||
|
||||
@ -462,7 +462,7 @@
|
||||
<a-col :xs="12">
|
||||
<a-form-item
|
||||
required
|
||||
name="BalanceAutomaticRefund"
|
||||
name="balanceAutomaticRefund"
|
||||
:rules="[{ required: true, message: '请选择余额退款自动通过' }]"
|
||||
>
|
||||
<template #label>
|
||||
@ -472,7 +472,7 @@
|
||||
</a-tooltip>
|
||||
</template>
|
||||
<a-radio-group
|
||||
v-model:value="form.BalanceAutomaticRefund"
|
||||
v-model:value="form.balanceAutomaticRefund"
|
||||
name="radioGroup"
|
||||
>
|
||||
<a-radio value="1">是</a-radio>
|
||||
@ -543,6 +543,7 @@
|
||||
</template>
|
||||
<a-date-picker
|
||||
style="width: 100%;"
|
||||
valueFormat="YYYY-MM-DD"
|
||||
v-model:value="form.issueAnInvoiceStartTime"
|
||||
/>
|
||||
</a-form-item>
|
||||
@ -690,12 +691,14 @@
|
||||
import { getGUID } from '@/utils/tools';
|
||||
import { ref, defineProps } from 'vue'
|
||||
import _ from 'lodash'
|
||||
import { callOperate } from '@/apis/call.js'
|
||||
|
||||
|
||||
const amountInput = ref();
|
||||
const formRef = ref();
|
||||
const form = ref({
|
||||
rechargeRule: []
|
||||
rechargeRule: [],
|
||||
tableName: 'reqEbikeSysRoperatesetDto'
|
||||
});
|
||||
const extraText = ref("");
|
||||
const showFirstFreeAmount = ref(false);
|
||||
@ -750,7 +753,7 @@ const changeBalanceRefund = (e) => {
|
||||
showBalanceRefund.value = true
|
||||
} else {
|
||||
showBalanceRefund.value = false
|
||||
form.value.BalanceAutomaticRefund = null;
|
||||
form.value.balanceAutomaticRefund = null;
|
||||
form.value.deductionGift = null;
|
||||
}
|
||||
}
|
||||
@ -794,13 +797,28 @@ const remove = (val, filed, array) => {
|
||||
|
||||
const validateForm = async () => {
|
||||
await formRef.value.validate();
|
||||
form.value.tableName = 'reqEbikeSysRoperatesetDto'
|
||||
return form.value;
|
||||
return _.cloneDeep(form.value);
|
||||
}
|
||||
|
||||
const loadFormData = (formData) => {
|
||||
if (formData) {
|
||||
form.value = formData
|
||||
} else {
|
||||
callOperate("/ebikesysrcostset/createSnowflakeId", {}, "get").then(res => {
|
||||
if (res.code == 200) {
|
||||
form.value['id'] = res.data;
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
const getFormData = () => {
|
||||
return _.cloneDeep(form.value);
|
||||
}
|
||||
|
||||
const resetFormValue = () => {
|
||||
formRef.value.resetFields()
|
||||
}
|
||||
|
||||
defineExpose({ validateForm, resetFormValue });
|
||||
defineExpose({ validateForm, resetFormValue, loadFormData, getFormData });
|
||||
</script>
|
||||
|
||||
@ -277,7 +277,7 @@
|
||||
>
|
||||
<a-form-item
|
||||
required
|
||||
name="freeFeturnType"
|
||||
name="freeReturnType"
|
||||
:rules="[{ required: true, message: '请选择学习免调度费还车类型' }]"
|
||||
:label-col="{ sm: { span: 10 }}"
|
||||
:wrapper-Col="{span: 24 }"
|
||||
@ -289,7 +289,7 @@
|
||||
</a-tooltip>
|
||||
</template>
|
||||
<a-select
|
||||
v-model:value="form.freeFeturnType"
|
||||
v-model:value="form.freeReturnType"
|
||||
mode="multiple"
|
||||
style="width: 100%"
|
||||
placeholder="请选择"
|
||||
@ -333,8 +333,12 @@
|
||||
|
||||
<script setup>
|
||||
import { ref, defineProps } from 'vue'
|
||||
import _ from 'lodash'
|
||||
import { callOperate } from '@/apis/call.js'
|
||||
const formRef = ref();
|
||||
const form = ref({});
|
||||
const form = ref({
|
||||
tableName: 'reqEbikeSysRbacksetDto'
|
||||
});
|
||||
const showAngularOffsetError = ref(false);
|
||||
const isIgnoreRegular = ref(false);
|
||||
const showDistance = ref(false);
|
||||
@ -367,7 +371,7 @@ const changeFreeDispatchStudy = (e) => {
|
||||
isFreeDispatchStudy.value = true;
|
||||
} else {
|
||||
isFreeDispatchStudy.value = false;
|
||||
form.value.freeFeturnType = [];
|
||||
form.value.freeReturnType = [];
|
||||
form.value.freeDispatchCount = null;
|
||||
}
|
||||
}
|
||||
@ -384,14 +388,29 @@ const changeIgnoreRegular = (e) => {
|
||||
|
||||
const validateForm = async () => {
|
||||
await formRef.value.validate();
|
||||
form.value.tableName = 'reqEbikeSysRbacksetDto'
|
||||
return form.value;
|
||||
return _.cloneDeep(form.value);
|
||||
}
|
||||
|
||||
const loadFormData = (formData) => {
|
||||
if (formData) {
|
||||
form.value = formData
|
||||
} else {
|
||||
callOperate("/ebikesysrcostset/createSnowflakeId", {}, "get").then(res => {
|
||||
if (res.code == 200) {
|
||||
form.value['id'] = res.data;
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
const getFormData = () => {
|
||||
return _.cloneDeep(form.value);
|
||||
}
|
||||
|
||||
const resetFormValue = () => {
|
||||
formRef.value.resetFields()
|
||||
}
|
||||
|
||||
defineExpose({ validateForm, resetFormValue });
|
||||
defineExpose({ validateForm, resetFormValue, loadFormData, getFormData });
|
||||
|
||||
</script>
|
||||
|
||||
@ -42,7 +42,7 @@
|
||||
>
|
||||
<a-range-picker
|
||||
:show-time="{ format: 'HH:mm' }"
|
||||
format="YYYY-MM-DD HH:mm"
|
||||
valueFormat="YYYY-MM-DD HH:mm"
|
||||
v-model:value="form.stopTimeInfo"
|
||||
:placeholder="['请选择停运时间起', '请选择停运时间止']"
|
||||
/>
|
||||
@ -85,7 +85,10 @@
|
||||
:wrapper-Col="{span: 24 }"
|
||||
:rules="[{ required: true, message: '请添加运营时间' }]"
|
||||
>
|
||||
<TimeRangePicker v-model:value="form.operateTimeBytime" />
|
||||
<TimeRangePicker
|
||||
valueFormat="HH:mm:ss"
|
||||
v-model:value="form.operateTimeBytime"
|
||||
/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col
|
||||
@ -133,7 +136,10 @@
|
||||
</template>
|
||||
<div id="timePicker"></div>
|
||||
<template v-if=" column.type == 'time'">
|
||||
<TimeRangePicker v-model:value="record[column.dataIndex]" />
|
||||
<TimeRangePicker
|
||||
valueFormat="HH:mm:ss"
|
||||
v-model:value="record[column.dataIndex]"
|
||||
/>
|
||||
</template>
|
||||
<template v-if=" column.type == 'select'">
|
||||
<a-tooltip
|
||||
@ -201,7 +207,7 @@
|
||||
</a-row>
|
||||
<a-row
|
||||
:gutter="8"
|
||||
v-if="showOperateTime"
|
||||
v-if="stopInfoFlag"
|
||||
>
|
||||
<a-col :xs="24">
|
||||
<a-form-item
|
||||
@ -250,16 +256,18 @@
|
||||
<script setup>
|
||||
import { ref, defineProps } from 'vue'
|
||||
import { TimeRangePicker } from 'ant-design-vue'
|
||||
import { getGUID } from '@/utils/tools';
|
||||
import _ from 'lodash'
|
||||
import { callOperate } from '@/apis/call.js'
|
||||
|
||||
|
||||
const stopInfoFlag = ref(false);
|
||||
const formRef = ref();
|
||||
const time = ref(false);
|
||||
const week = ref(false);
|
||||
const showOperateTime = ref(false);
|
||||
const form = ref({
|
||||
operateTimeByWeek: []
|
||||
operateTimeByWeek: [],
|
||||
operateTimeBytime: null,
|
||||
tableName: 'reqEbikeSysRoperatesetDto'
|
||||
});
|
||||
const showStopTimeInfo = ref(false);
|
||||
const saveFlag = ref(true);
|
||||
@ -291,10 +299,14 @@ const columns = ref([
|
||||
}])
|
||||
|
||||
const addRecord = () => {
|
||||
form.value.operateTimeByWeek.push({
|
||||
key: getGUID(),
|
||||
weekday: [],
|
||||
workTime: ""
|
||||
callOperate("/ebikesysrcostset/createSnowflakeId", {}, "get").then(res => {
|
||||
if (res.code == 200) {
|
||||
form.value.operateTimeByWeek.push({
|
||||
key: res.data,
|
||||
weekday: [],
|
||||
workTime: []
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@ -321,10 +333,13 @@ const changeIsOperate = (e) => {
|
||||
if (value == '2') {
|
||||
showStopTimeInfo.value = true
|
||||
showOperateTime.value = true;
|
||||
stopInfoFlag.value = true;
|
||||
} else {
|
||||
showStopTimeInfo.value = false
|
||||
showOperateTime.value = false;
|
||||
stopInfoFlag.value = false;
|
||||
form.value.stopTimeInfo = null;
|
||||
form.value.operateType = null;
|
||||
}
|
||||
}
|
||||
|
||||
@ -342,6 +357,11 @@ const changeOperateType = (data) => {
|
||||
week.value = false;
|
||||
time.value = false;
|
||||
showOperateTime.value = false;
|
||||
form.value.operateTimeBytime = null;
|
||||
form.value.operateTimeByWeek = [];
|
||||
if (form.value.isOperate == '1') {
|
||||
stopInfoFlag.value = false
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -365,13 +385,51 @@ const checkWeek = () => {
|
||||
const validateForm = async () => {
|
||||
|
||||
await formRef.value.validate();
|
||||
form.value.tableName = 'reqEbikeSysRoperatesetDto'
|
||||
return form.value;
|
||||
const formData = _.cloneDeep(form.value);
|
||||
if (formData['isOperate'] == '2') {
|
||||
formData['stopStartTime'] = formData['stopTimeInfo'][0]
|
||||
formData['stopEndTime'] = formData['stopTimeInfo'][1]
|
||||
}
|
||||
if (formData['operateType'] == '2') {
|
||||
formData['operateTime'] = [{
|
||||
startWorktime: formData['operateTimeBytime'][0],
|
||||
endWorktime: formData['operateTimeBytime'][1]
|
||||
}]
|
||||
} else if (formData['operateType'] == '3') {
|
||||
formData['operateTime'] = [];
|
||||
formData['operateTimeByWeek'].map(item => {
|
||||
formData['operateTime'].push({
|
||||
weekday: item['weekday'],
|
||||
startWorktime: item['workTime'][0],
|
||||
endWorktime: item['workTime'][1],
|
||||
})
|
||||
})
|
||||
}
|
||||
delete formData['operateTimeBytime'];
|
||||
delete formData['operateTimeByWeek'];
|
||||
delete formData['stopTimeInfo'];
|
||||
return formData;
|
||||
}
|
||||
|
||||
const loadFormData = (formData) => {
|
||||
if (formData) {
|
||||
form.value = formData
|
||||
} else {
|
||||
callOperate("/ebikesysrcostset/createSnowflakeId", {}, "get").then(res => {
|
||||
if (res.code == 200) {
|
||||
form.value['id'] = res.data;
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
const getFormData = () => {
|
||||
return _.cloneDeep(form.value);
|
||||
}
|
||||
|
||||
const resetFormValue = () => {
|
||||
formRef.value.resetFields()
|
||||
}
|
||||
|
||||
defineExpose({ validateForm, resetFormValue });
|
||||
defineExpose({ validateForm, resetFormValue, loadFormData, getFormData });
|
||||
</script>
|
||||
|
||||
@ -766,9 +766,13 @@
|
||||
|
||||
<script setup>
|
||||
import { ref, defineProps } from 'vue'
|
||||
import _ from 'lodash'
|
||||
import { callOperate } from '@/apis/call.js'
|
||||
const formRef = ref();
|
||||
const showMinimumAmount = ref(false);
|
||||
const form = ref({});
|
||||
const form = ref({
|
||||
tableName: 'reqEbikeSysRusecondsetDto'
|
||||
});
|
||||
const prefixText = ref("");
|
||||
const extraTextByRidingFace = ref("");
|
||||
const extraTextByOverFace = ref("");
|
||||
@ -863,13 +867,28 @@ const changeMinimumAmount = (e) => {
|
||||
|
||||
const validateForm = async () => {
|
||||
await formRef.value.validate();
|
||||
form.value.tableName = 'reqEbikeSysRusecondsetDto'
|
||||
return form.value;
|
||||
return _.cloneDeep(form.value);
|
||||
}
|
||||
|
||||
const loadFormData = (formData) => {
|
||||
if (formData) {
|
||||
form.value = formData
|
||||
} else {
|
||||
callOperate("/ebikesysrcostset/createSnowflakeId", {}, "get").then(res => {
|
||||
if (res.code == 200) {
|
||||
form.value['id'] = res.data;
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
const getFormData = () => {
|
||||
return _.cloneDeep(form.value);
|
||||
}
|
||||
|
||||
const resetFormValue = () => {
|
||||
formRef.value.resetFields()
|
||||
}
|
||||
|
||||
defineExpose({ validateForm, resetFormValue });
|
||||
defineExpose({ validateForm, resetFormValue, loadFormData, getFormData });
|
||||
</script>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user