This commit is contained in:
PQZ 2025-03-03 11:18:27 +08:00
parent d5ec1da68e
commit 1fe3616e16
3 changed files with 244 additions and 222 deletions

View File

@ -86,41 +86,41 @@ export const DICT_TYPE = {
PROMOTION_CONDITION_TYPE: 'promotion_condition_type', // 营销的条件类型枚举 PROMOTION_CONDITION_TYPE: 'promotion_condition_type', // 营销的条件类型枚举
// ==========base模块 ========== // ==========base模块 ==========
//客户类型字典编码 //客户类型字典编码
DICT_CUS_TYPE : "cus_type", DICT_CUS_TYPE: "cus_type",
//客户初始来源字典编码 //客户初始来源字典编码
DICT_CUS_DATA_FROM : 'cus_data_from', DICT_CUS_DATA_FROM: 'cus_data_from',
//业务分类字典编码 //业务分类字典编码
DICT_CUS_BUSI_TYPE : 'cus_busi_type', DICT_CUS_BUSI_TYPE: 'cus_busi_type',
//客户注册方式字典编码 //客户注册方式字典编码
DICT_SIGN_TYPE : 'cus_sign_type', DICT_SIGN_TYPE: 'cus_sign_type',
//性别 //性别
DICT_SYS_USER_SEX : 'system_user_sex', DICT_SYS_USER_SEX: 'system_user_sex',
//客户状态 //客户状态
DICT_CUS_INFO_STATUS : 'cus_info_status', DICT_CUS_INFO_STATUS: 'cus_info_status',
//推广渠道 //推广渠道
PROMOTION_CHANNEL : 'promotion_channel', PROMOTION_CHANNEL: 'promotion_channel',
//用户类型 //用户类型
SYSTEM_USER_TYPE : 'system_user_type', SYSTEM_USER_TYPE: 'system_user_type',
// 分类字典通知公告 // 分类字典通知公告
NOTICE_SERVER: 'notice_server', NOTICE_SERVER: 'notice_server',
// ------- carMain模块 ------- // ------- carMain模块 -------
//车辆性质 //车辆性质
DICT_CAR_NATURE : 'car_nature', DICT_CAR_NATURE: 'car_nature',
//车辆类别 //车辆类别
DICT_CAR_CATEGORY : 'car_category', DICT_CAR_CATEGORY: 'car_category',
//品牌类型 //品牌类型
DICT_BRAND_TYPE : 'brand_type', DICT_BRAND_TYPE: 'brand_type',
//标签样式 //标签样式
DICT_BASE_LABEL_TYPE : 'base_label_type', DICT_BASE_LABEL_TYPE: 'base_label_type',
//业务分类 //业务分类
DICT_BASE_LABEL_BUSI_TYPE : 'label_busi_type', DICT_BASE_LABEL_BUSI_TYPE: 'label_busi_type',
//合同模板类型 //合同模板类型
DICT_BASE_CONT_TEMP_TYPE : 'cont_temp_type', DICT_BASE_CONT_TEMP_TYPE: 'cont_temp_type',
//合同使用场景 //合同使用场景
DICT_BASE_CONT_TEMP_USE : 'cont_temp_use', DICT_BASE_CONT_TEMP_USE: 'cont_temp_use',
//合同是否有效 //合同是否有效
DICT_BASE_CONT_IS_VALID : 'cont_is_valid', DICT_BASE_CONT_IS_VALID: 'cont_is_valid',
// ------- 企业管理模块 ------- // ------- 企业管理模块 -------
// 员工学历 // 员工学历
@ -140,27 +140,27 @@ export const DICT_TYPE = {
//存放类型 //存放类型
COMPANY_DEPOSIT_TYPE: 'company_deposit_type', COMPANY_DEPOSIT_TYPE: 'company_deposit_type',
//时间周期字典 //时间周期字典
CYCLE_DICT : 'cycle_dict', CYCLE_DICT: 'cycle_dict',
//资产分类 //资产分类
COMPANY_PROPERTY_CATG: 'company_property_catg', COMPANY_PROPERTY_CATG: 'company_property_catg',
// 资产取得方式 // 资产取得方式
PROPERTY_GET_WAY : 'property_get_way', PROPERTY_GET_WAY: 'property_get_way',
COMPANY_COST_TYPE: 'company_cost_type', COMPANY_COST_TYPE: 'company_cost_type',
// 救援车车型 // 救援车车型
JYC_TYPE : 'jyc_type', JYC_TYPE: 'jyc_type',
Drive_Dialy : 'drive_dialy', Drive_Dialy: 'drive_dialy',
Jx_report_state : 'jx_report_state', Jx_report_state: 'jx_report_state',
Evaluate_type : 'evaluate_type', Evaluate_type: 'evaluate_type',
Drive_course_subject : 'drive_course_subject', Drive_course_subject: 'drive_course_subject',
Drive_card_type : 'drive_card_type', Drive_card_type: 'drive_card_type',
File_type : 'file_type', File_type: 'file_type',
Cource_type : 'cource_type', Cource_type: 'cource_type',
COURCE_TYPE : 'cource_type', COURCE_TYPE: 'cource_type',
Car_blong : 'car_blong', Car_blong: 'car_blong',
// 车牌颜色 // 车牌颜色
CAR_LICENSE_COLOR: 'car_license_color', CAR_LICENSE_COLOR: 'car_license_color',
// 车辆使用性质 // 车辆使用性质
CAR_USE_NATURE : 'car_use_nature', CAR_USE_NATURE: 'car_use_nature',
// 救援类型 // 救援类型
DLJY_TYPE: 'dljy_type', DLJY_TYPE: 'dljy_type',
// 收费类型 // 收费类型
@ -226,19 +226,19 @@ export const DICT_TYPE = {
// ---------会员相关---------member_coupon_typemember_coupon_out_rulemember_carmember_active // ---------会员相关---------member_coupon_typemember_coupon_out_rulemember_carmember_active
//卡券类型 //卡券类型
MEMBER_COUPON_TYPE:"member_coupon_type", MEMBER_COUPON_TYPE: "member_coupon_type",
//核销规则 //核销规则
MEMBER_COUPON_OUT_RULE:"member_coupon_out_rule", MEMBER_COUPON_OUT_RULE: "member_coupon_out_rule",
//适用车型 //适用车型
MEMBER_CAR:"member_car", MEMBER_CAR: "member_car",
//活动类型 //活动类型
MEMBER_ACTIVE:"member_active", MEMBER_ACTIVE: "member_active",
//规则 //规则
BALANCE_CHANGE_RULE:"balance_change_rule", BALANCE_CHANGE_RULE: "balance_change_rule",
//主体 //主体
BALANCE_CHANGE_MAIN:"balance_change_main", BALANCE_CHANGE_MAIN: "balance_change_main",
//类型 //类型
BALANCE_CHANGE_TYPE:"balance_change_type", BALANCE_CHANGE_TYPE: "balance_change_type",
// ----------检测相关------------ // ----------检测相关------------
INS_EQU_TYPE: 'ins_equ_type', INS_EQU_TYPE: 'ins_equ_type',
@ -248,6 +248,10 @@ export const DICT_TYPE = {
DRIVE_TYPE: 'drive_type', DRIVE_TYPE: 'drive_type',
//驾校课程类型 //驾校课程类型
DRIVE_COURSE_TYPE: 'course_type', DRIVE_COURSE_TYPE: 'course_type',
//驾校订单状态
DRIVE_SCHOOL_ORDER_STATUS: 'drive_school_order_status',
//驾校订单支付类型
DRIVE_SCHOOL_PAY_TYPE: 'drive_school_pay_type',
} }

View File

@ -3,74 +3,75 @@
<!-- 对话框(添加 / 修改) --> <!-- 对话框(添加 / 修改) -->
<el-dialog :title="dialogTitle" :visible.sync="dialogVisible" width="45%" v-dialogDrag append-to-body> <el-dialog :title="dialogTitle" :visible.sync="dialogVisible" width="45%" v-dialogDrag append-to-body>
<el-form ref="formRef" :model="formData" :rules="formRules" v-loading="formLoading" label-width="100px"> <el-form ref="formRef" :model="formData" :rules="formRules" v-loading="formLoading" label-width="100px">
<el-form-item label="订单号" prop="orderNo"> <el-form-item label="订单号" prop="orderNo">
<el-input v-model="formData.orderNo" placeholder="请输入订单号" /> <el-input v-model="formData.orderNo" placeholder="请输入订单号"/>
</el-form-item> </el-form-item>
<el-form-item label="用户姓名" prop="userName"> <el-form-item label="用户姓名" prop="userName">
<el-input v-model="formData.userName" placeholder="请输入用户姓名" /> <el-input v-model="formData.userName" placeholder="请输入用户姓名"/>
</el-form-item> </el-form-item>
<el-form-item label="用户手机号" prop="userPhone"> <el-form-item label="用户手机号" prop="userPhone">
<el-input v-model="formData.userPhone" placeholder="请输入用户手机号" /> <el-input v-model="formData.userPhone" placeholder="请输入用户手机号"/>
</el-form-item> </el-form-item>
<el-form-item label="用户身份证号" prop="userNo"> <el-form-item label="用户身份证号" prop="userNo">
<el-input v-model="formData.userNo" placeholder="请输入用户身份证号" /> <el-input v-model="formData.userNo" placeholder="请输入用户身份证号"/>
</el-form-item> </el-form-item>
<el-form-item label="用户性别" prop="userSex"> <el-form-item label="性别" prop="userSex">
<el-radio-group v-model="formData.userSex"> <el-radio-group v-model="formData.sex">
<el-radio label="1">请选择字典生成</el-radio> <el-radio v-for="dict in this.getDictDatas(DICT_TYPE.SYSTEM_USER_SEX)"
</el-radio-group> :key="dict.value" :label="dict.value">{{ dict.label }}
</el-form-item> </el-radio>
<el-form-item label="课程id" prop="courseId"> </el-radio-group>
<el-input v-model="formData.courseId" placeholder="请输入课程id" /> </el-form-item>
</el-form-item>
<el-form-item label="课程名字" prop="courseName"> <el-form-item label="课程名字" prop="courseName">
<el-input v-model="formData.courseName" placeholder="请输入课程名字" /> <el-input v-model="formData.courseName" placeholder="请输入课程名字"/>
</el-form-item> </el-form-item>
<el-form-item label="主负责教练ID" prop="coachUserId">
<el-input v-model="formData.coachUserId" placeholder="请输入主负责教练ID" /> <el-form-item label="负责教练" prop="coachUserName">
</el-form-item> <el-input v-model="formData.coachUserName" placeholder="请输入主负责教练姓名"/>
<el-form-item label="主负责教练姓名" prop="coachUserName"> </el-form-item>
<el-input v-model="formData.coachUserName" placeholder="请输入主负责教练姓名" /> <el-form-item label="订金金额" prop="reserveMoney">
</el-form-item> <el-input v-model="formData.reserveMoney" placeholder="请输入订金金额"/>
<el-form-item label="订金金额" prop="reserveMoney"> </el-form-item>
<el-input v-model="formData.reserveMoney" placeholder="请输入订金金额" />
</el-form-item> <el-form-item label="是否终止" prop="ifEnd">
<el-form-item label="课程类型" prop="courseType"> <el-radio-group v-model="formData.ifEnd">
<el-select v-model="formData.courseType" placeholder="请选择课程类型"> <el-radio v-for="item in ifEndRadio"
<el-option label="请选择字典生成" value="" /> :key="item.value" :label="item.value">{{ item.label }}
</el-select> </el-radio>
</el-form-item> </el-radio-group>
<el-form-item label="是否终止0 未终止|1已终止" prop="ifEnd"> </el-form-item>
<el-radio-group v-model="formData.ifEnd"> <el-form-item label="终止原因" prop="endReason">
<el-radio label="1">请选择字典生成</el-radio> <el-input v-model="formData.endReason" placeholder="请输入终止原因"/>
</el-radio-group> </el-form-item>
</el-form-item> <el-form-item label="终止时间" prop="endTime">
<el-form-item label="终止原因" prop="endReason"> <el-date-picker clearable v-model="formData.endTime" type="date" value-format="timestamp"
<el-input v-model="formData.endReason" placeholder="请输入终止原因" /> placeholder="选择终止时间"/>
</el-form-item> </el-form-item>
<el-form-item label="终止时间" prop="endTime"> <el-form-item label="订单状态" prop="paymentStatus">
<el-date-picker clearable v-model="formData.endTime" type="date" value-format="timestamp" placeholder="选择终止时间" /> <el-select v-model="formData.paymentStatus" placeholder="请选择订单状态">
</el-form-item> <el-option v-for="dict in this.getDictDatas(DICT_TYPE.DRIVE_SCHOOL_ORDER_STATUS)"
<el-form-item label="订单状态" prop="paymentStatus"> :key="dict.value" :label="dict.label" :value="dict.value"
<el-select v-model="formData.paymentStatus" placeholder="请选择订单状态"> />
<el-option label="请选择字典生成" value="" /> </el-select>
</el-select> </el-form-item>
</el-form-item> <el-form-item label="是否已面签" prop="isSign">
<el-form-item label="是否已面签 0否 1 是" prop="isSign"> <el-select v-model="formData.isSign" placeholder="请选择是否已面签">
<el-select v-model="formData.isSign" placeholder="请选择是否已面签 0否 1 是"> <el-option label="请选择字典生成" value=""/>
<el-option label="请选择字典生成" value="" /> </el-select>
</el-select> </el-form-item>
</el-form-item> <el-form-item label="尾款" prop="restMoney">
<el-form-item label="尾款" prop="restMoney"> <el-input v-model="formData.restMoney" placeholder="请输入尾款"/>
<el-input v-model="formData.restMoney" placeholder="请输入尾款" /> </el-form-item>
</el-form-item> <el-form-item label="支付类型" prop="payType">
<el-form-item label="支付类型 1定金 2全款" prop="payType"> <el-select v-model="formData.paymentStatus" placeholder="请选择支付类型">
<el-select v-model="formData.payType" placeholder="请选择支付类型 1定金 2全款"> <el-option v-for="dict in this.getDictDatas(DICT_TYPE.DRIVE_SCHOOL_PAY_TYPE)"
<el-option label="请选择字典生成" value="" /> :key="dict.value" :label="dict.label" :value="dict.value"
</el-select> />
</el-form-item> </el-select>
</el-form-item>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm" :disabled="formLoading"> </el-button> <el-button type="primary" @click="submitForm" :disabled="formLoading"> </el-button>
<el-button @click="dialogVisible = false"> </el-button> <el-button @click="dialogVisible = false"> </el-button>
</div> </div>
@ -80,110 +81,119 @@
<script> <script>
import * as SchoolCourseOrderApi from '@/views/drivingSchool/DriveSchoolPay/api'; import * as SchoolCourseOrderApi from '@/views/drivingSchool/DriveSchoolPay/api';
export default {
name: "SchoolCourseOrderForm", export default {
components: { name: "SchoolCourseOrderForm",
}, components: {},
data() { data() {
return { return {
// //
dialogTitle: "", dialogTitle: "",
// //
dialogVisible: false, dialogVisible: false,
// 12 // 12
formLoading: false, formLoading: false,
// //
formData: { formData: {
orderNo: undefined, orderNo: undefined,
userName: undefined, userName: undefined,
userPhone: undefined, userPhone: undefined,
userNo: undefined, userNo: undefined,
userSex: undefined, userSex: undefined,
courseId: undefined, courseId: undefined,
courseName: undefined, courseName: undefined,
coachUserId: undefined, coachUserId: undefined,
coachUserName: undefined, coachUserName: undefined,
reserveMoney: undefined, reserveMoney: undefined,
courseType: undefined, courseType: undefined,
ifEnd: undefined, ifEnd: undefined,
endReason: undefined, endReason: undefined,
endTime: undefined, endTime: undefined,
paymentStatus: undefined, paymentStatus: undefined,
isSign: undefined, isSign: undefined,
restMoney: undefined, restMoney: undefined,
payType: undefined, payType: undefined,
},
ifEndRadio:[
{
label:'是',
value:'1'
}, },
// {
formRules: { label:'否',
value:'0'
}, },
}; ],
}, //
methods: { formRules: {},
/** 打开弹窗 */ };
async open(id) { },
this.dialogVisible = true; methods: {
this.reset(); /** 打开弹窗 */
// async open(id) {
if (id) { this.dialogVisible = true;
this.formLoading = true; this.reset();
try { //
const res = await SchoolCourseOrderApi.getSchoolCourseOrder(id); if (id) {
this.formData = res.data; this.formLoading = true;
this.title = "修改驾照报名订单";
} finally {
this.formLoading = false;
}
}
this.title = "新增驾照报名订单";
},
/** 提交按钮 */
async submitForm() {
//
await this.$refs["formRef"].validate();
this.formLoading = true;
try { try {
const data = this.formData; const res = await SchoolCourseOrderApi.getSchoolCourseOrder(id);
// this.formData = res.data;
if (data.id) { this.title = "修改驾照报名订单";
await SchoolCourseOrderApi.updateSchoolCourseOrder(data);
this.$modal.msgSuccess("修改成功");
this.dialogVisible = false;
this.$emit('success');
return;
}
//
await SchoolCourseOrderApi.createSchoolCourseOrder(data);
this.$modal.msgSuccess("新增成功");
this.dialogVisible = false;
this.$emit('success');
} finally { } finally {
this.formLoading = false; this.formLoading = false;
} }
},
/** 表单重置 */
reset() {
this.formData = {
orderNo: undefined,
userName: undefined,
userPhone: undefined,
userNo: undefined,
userSex: undefined,
courseId: undefined,
courseName: undefined,
coachUserId: undefined,
coachUserName: undefined,
reserveMoney: undefined,
courseType: undefined,
ifEnd: undefined,
endReason: undefined,
endTime: undefined,
paymentStatus: undefined,
isSign: undefined,
restMoney: undefined,
payType: undefined,
};
this.resetForm("formRef");
} }
this.title = "新增驾照报名订单";
},
/** 提交按钮 */
async submitForm() {
//
await this.$refs["formRef"].validate();
this.formLoading = true;
try {
const data = this.formData;
//
if (data.id) {
await SchoolCourseOrderApi.updateSchoolCourseOrder(data);
this.$modal.msgSuccess("修改成功");
this.dialogVisible = false;
this.$emit('success');
return;
}
//
await SchoolCourseOrderApi.createSchoolCourseOrder(data);
this.$modal.msgSuccess("新增成功");
this.dialogVisible = false;
this.$emit('success');
} finally {
this.formLoading = false;
}
},
/** 表单重置 */
reset() {
this.formData = {
orderNo: undefined,
userName: undefined,
userPhone: undefined,
userNo: undefined,
userSex: undefined,
courseId: undefined,
courseName: undefined,
coachUserId: undefined,
coachUserName: undefined,
reserveMoney: undefined,
courseType: undefined,
ifEnd: undefined,
endReason: undefined,
endTime: undefined,
paymentStatus: undefined,
isSign: undefined,
restMoney: undefined,
payType: undefined,
};
this.resetForm("formRef");
} }
}; }
};
</script> </script>

View File

@ -8,17 +8,10 @@
<el-form-item label="用户姓名" prop="userName"> <el-form-item label="用户姓名" prop="userName">
<el-input v-model="queryParams.userName" placeholder="请输入用户姓名" clearable @keyup.enter.native="handleQuery"/> <el-input v-model="queryParams.userName" placeholder="请输入用户姓名" clearable @keyup.enter.native="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item label="课程名字" prop="courseName"> <el-form-item label="负责教练" prop="coachUserName">
<el-input v-model="queryParams.courseName" placeholder="请输入课程名字" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="主负责教练姓名" prop="coachUserName">
<el-input v-model="queryParams.coachUserName" placeholder="请输入主负责教练姓名" clearable @keyup.enter.native="handleQuery"/> <el-input v-model="queryParams.coachUserName" placeholder="请输入主负责教练姓名" clearable @keyup.enter.native="handleQuery"/>
</el-form-item> </el-form-item>
<el-form-item label="是否已面签" prop="isSign">
<el-select v-model="queryParams.isSign" placeholder="请选择是否已面签" clearable size="small">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
@ -40,20 +33,31 @@
<el-table-column label="订单号" align="center" prop="orderNo" /> <el-table-column label="订单号" align="center" prop="orderNo" />
<el-table-column label="用户姓名" align="center" prop="userName" /> <el-table-column label="用户姓名" align="center" prop="userName" />
<el-table-column label="用户手机号" align="center" prop="userPhone" /> <el-table-column label="用户手机号" align="center" prop="userPhone" />
<el-table-column label="用户身份证号" align="center" prop="userNo" /> <el-table-column label="用户性别" align="center" prop="userSex">
<el-table-column label="用户性别" align="center" prop="userSex" />
<el-table-column label="课程名字" align="center" prop="courseName" />
<el-table-column label="主负责教练姓名" align="center" prop="coachUserName" />
<el-table-column label="订金金额" align="center" prop="reserveMoney" />
<el-table-column label="课程类型" align="center" prop="courseType" />
<el-table-column label="是否终止" align="center" prop="ifEnd" />
<el-table-column label="终止原因" align="center" prop="endReason" />
<el-table-column label="终止时间" align="center" prop="endTime" width="180">
<template v-slot="scope"> <template v-slot="scope">
<span>{{ parseTime(scope.row.endTime) }}</span> <dict-tag :type="DICT_TYPE.DICT_SYS_USER_SEX" :value="scope.row.userSex"/>
</template>
</el-table-column>
<el-table-column label="课程" align="center" prop="courseName" />
<el-table-column label="负责教练" align="center" prop="coachUserName" />
<el-table-column label="订金金额" align="center" prop="reserveMoney" />
<el-table-column label="课程类型" align="center" prop="courseType" />
<el-table-column label="是否终止" align="center" prop="ifEnd">
<template slot-scope="scope">
<el-tag v-if="scope.row.ifEnd == 1" type="success"></el-tag>
<el-tag v-if="scope.row.ifEnd == 0" type="danger"></el-tag>
</template>
</el-table-column>
<!-- <el-table-column label="终止时间" align="center" prop="endTime" width="180">-->
<!-- <template v-slot="scope">-->
<!-- <span>{{ parseTime(scope.row.endTime) }}</span>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="订单状态" align="center" prop="paymentStatus">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.DRIVE_SCHOOL_ORDER_STATUS" :value="scope.row.paymentStatus"/>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="订单状态" align="center" prop="paymentStatus" />
<el-table-column label="是否已面签" align="center" prop="isSign"> <el-table-column label="是否已面签" align="center" prop="isSign">
<template slot-scope="scope"> <template slot-scope="scope">
<el-tag v-if="scope.row.isSign == 1" type="success"></el-tag> <el-tag v-if="scope.row.isSign == 1" type="success"></el-tag>
@ -61,7 +65,11 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="尾款" align="center" prop="restMoney" /> <el-table-column label="尾款" align="center" prop="restMoney" />
<el-table-column label="支付类型" align="center" prop="payType" /> <el-table-column label="支付类型" align="center" prop="payType">
<template v-slot="scope">
<dict-tag :type="DICT_TYPE.DRIVE_SCHOOL_PAY_TYPE" :value="scope.row.payType"/>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template v-slot="scope"> <template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="openForm(scope.row.id)">修改</el-button> <el-button size="mini" type="text" icon="el-icon-edit" @click="openForm(scope.row.id)">修改</el-button>