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', // 营销的条件类型枚举
// ==========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',
// ------- 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',
//时间周期字典
CYCLE_DICT : 'cycle_dict',
CYCLE_DICT: 'cycle_dict',
//资产分类
COMPANY_PROPERTY_CATG: 'company_property_catg',
// 资产取得方式
PROPERTY_GET_WAY : 'property_get_way',
PROPERTY_GET_WAY: 'property_get_way',
COMPANY_COST_TYPE: 'company_cost_type',
// 救援车车型
JYC_TYPE : 'jyc_type',
Drive_Dialy : 'drive_dialy',
Jx_report_state : 'jx_report_state',
Evaluate_type : 'evaluate_type',
Drive_course_subject : 'drive_course_subject',
Drive_card_type : 'drive_card_type',
File_type : 'file_type',
Cource_type : 'cource_type',
COURCE_TYPE : 'cource_type',
Car_blong : 'car_blong',
JYC_TYPE: 'jyc_type',
Drive_Dialy: 'drive_dialy',
Jx_report_state: 'jx_report_state',
Evaluate_type: 'evaluate_type',
Drive_course_subject: 'drive_course_subject',
Drive_card_type: 'drive_card_type',
File_type: 'file_type',
Cource_type: 'cource_type',
COURCE_TYPE: 'cource_type',
Car_blong: 'car_blong',
// 车牌颜色
CAR_LICENSE_COLOR: 'car_license_color',
// 车辆使用性质
CAR_USE_NATURE : 'car_use_nature',
CAR_USE_NATURE: 'car_use_nature',
// 救援类型
DLJY_TYPE: 'dljy_type',
// 收费类型
@ -226,19 +226,19 @@ export const DICT_TYPE = {
// ---------会员相关---------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',
@ -248,6 +248,10 @@ export const DICT_TYPE = {
DRIVE_TYPE: 'drive_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-form ref="formRef" :model="formData" :rules="formRules" v-loading="formLoading" label-width="100px">
<el-form-item label="订单号" prop="orderNo">
<el-input v-model="formData.orderNo" placeholder="请输入订单号" />
</el-form-item>
<el-form-item label="用户姓名" prop="userName">
<el-input v-model="formData.userName" placeholder="请输入用户姓名" />
</el-form-item>
<el-form-item label="用户手机号" prop="userPhone">
<el-input v-model="formData.userPhone" placeholder="请输入用户手机号" />
</el-form-item>
<el-form-item label="用户身份证号" prop="userNo">
<el-input v-model="formData.userNo" placeholder="请输入用户身份证号" />
</el-form-item>
<el-form-item label="用户性别" prop="userSex">
<el-radio-group v-model="formData.userSex">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="课程id" prop="courseId">
<el-input v-model="formData.courseId" placeholder="请输入课程id" />
</el-form-item>
<el-form-item label="课程名字" prop="courseName">
<el-input v-model="formData.courseName" placeholder="请输入课程名字" />
</el-form-item>
<el-form-item label="主负责教练ID" prop="coachUserId">
<el-input v-model="formData.coachUserId" placeholder="请输入主负责教练ID" />
</el-form-item>
<el-form-item label="主负责教练姓名" prop="coachUserName">
<el-input v-model="formData.coachUserName" placeholder="请输入主负责教练姓名" />
</el-form-item>
<el-form-item label="订金金额" prop="reserveMoney">
<el-input v-model="formData.reserveMoney" placeholder="请输入订金金额" />
</el-form-item>
<el-form-item label="课程类型" prop="courseType">
<el-select v-model="formData.courseType" placeholder="请选择课程类型">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="是否终止0 未终止|1已终止" prop="ifEnd">
<el-radio-group v-model="formData.ifEnd">
<el-radio label="1">请选择字典生成</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="终止原因" prop="endReason">
<el-input v-model="formData.endReason" placeholder="请输入终止原因" />
</el-form-item>
<el-form-item label="终止时间" prop="endTime">
<el-date-picker clearable v-model="formData.endTime" type="date" value-format="timestamp" placeholder="选择终止时间" />
</el-form-item>
<el-form-item label="订单状态" prop="paymentStatus">
<el-select v-model="formData.paymentStatus" placeholder="请选择订单状态">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="是否已面签 0否 1 是" prop="isSign">
<el-select v-model="formData.isSign" placeholder="请选择是否已面签 0否 1 是">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="尾款" prop="restMoney">
<el-input v-model="formData.restMoney" placeholder="请输入尾款" />
</el-form-item>
<el-form-item label="支付类型 1定金 2全款" prop="payType">
<el-select v-model="formData.payType" placeholder="请选择支付类型 1定金 2全款">
<el-option label="请选择字典生成" value="" />
</el-select>
</el-form-item>
<el-form-item label="订单号" prop="orderNo">
<el-input v-model="formData.orderNo" placeholder="请输入订单号"/>
</el-form-item>
<el-form-item label="用户姓名" prop="userName">
<el-input v-model="formData.userName" placeholder="请输入用户姓名"/>
</el-form-item>
<el-form-item label="用户手机号" prop="userPhone">
<el-input v-model="formData.userPhone" placeholder="请输入用户手机号"/>
</el-form-item>
<el-form-item label="用户身份证号" prop="userNo">
<el-input v-model="formData.userNo" placeholder="请输入用户身份证号"/>
</el-form-item>
<el-form-item label="性别" prop="userSex">
<el-radio-group v-model="formData.sex">
<el-radio v-for="dict in this.getDictDatas(DICT_TYPE.SYSTEM_USER_SEX)"
:key="dict.value" :label="dict.value">{{ dict.label }}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="课程名字" prop="courseName">
<el-input v-model="formData.courseName" placeholder="请输入课程名字"/>
</el-form-item>
<el-form-item label="负责教练" prop="coachUserName">
<el-input v-model="formData.coachUserName" placeholder="请输入主负责教练姓名"/>
</el-form-item>
<el-form-item label="订金金额" prop="reserveMoney">
<el-input v-model="formData.reserveMoney" placeholder="请输入订金金额"/>
</el-form-item>
<el-form-item label="是否终止" prop="ifEnd">
<el-radio-group v-model="formData.ifEnd">
<el-radio v-for="item in ifEndRadio"
:key="item.value" :label="item.value">{{ item.label }}
</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="终止原因" prop="endReason">
<el-input v-model="formData.endReason" placeholder="请输入终止原因"/>
</el-form-item>
<el-form-item label="终止时间" prop="endTime">
<el-date-picker clearable v-model="formData.endTime" type="date" value-format="timestamp"
placeholder="选择终止时间"/>
</el-form-item>
<el-form-item label="订单状态" prop="paymentStatus">
<el-select v-model="formData.paymentStatus" placeholder="请选择订单状态">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.DRIVE_SCHOOL_ORDER_STATUS)"
:key="dict.value" :label="dict.label" :value="dict.value"
/>
</el-select>
</el-form-item>
<el-form-item label="是否已面签" prop="isSign">
<el-select v-model="formData.isSign" placeholder="请选择是否已面签">
<el-option label="请选择字典生成" value=""/>
</el-select>
</el-form-item>
<el-form-item label="尾款" prop="restMoney">
<el-input v-model="formData.restMoney" placeholder="请输入尾款"/>
</el-form-item>
<el-form-item label="支付类型" prop="payType">
<el-select v-model="formData.paymentStatus" placeholder="请选择支付类型">
<el-option v-for="dict in this.getDictDatas(DICT_TYPE.DRIVE_SCHOOL_PAY_TYPE)"
:key="dict.value" :label="dict.label" :value="dict.value"
/>
</el-select>
</el-form-item>
</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 @click="dialogVisible = false"> </el-button>
</div>
@ -80,110 +81,119 @@
<script>
import * as SchoolCourseOrderApi from '@/views/drivingSchool/DriveSchoolPay/api';
export default {
name: "SchoolCourseOrderForm",
components: {
},
data() {
return {
//
dialogTitle: "",
//
dialogVisible: false,
// 12
formLoading: false,
//
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,
export default {
name: "SchoolCourseOrderForm",
components: {},
data() {
return {
//
dialogTitle: "",
//
dialogVisible: false,
// 12
formLoading: false,
//
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,
},
ifEndRadio:[
{
label:'是',
value:'1'
},
//
formRules: {
{
label:'否',
value:'0'
},
};
},
methods: {
/** 打开弹窗 */
async open(id) {
this.dialogVisible = true;
this.reset();
//
if (id) {
this.formLoading = true;
try {
const res = await SchoolCourseOrderApi.getSchoolCourseOrder(id);
this.formData = res.data;
this.title = "修改驾照报名订单";
} finally {
this.formLoading = false;
}
}
this.title = "新增驾照报名订单";
},
/** 提交按钮 */
async submitForm() {
//
await this.$refs["formRef"].validate();
this.formLoading = true;
],
//
formRules: {},
};
},
methods: {
/** 打开弹窗 */
async open(id) {
this.dialogVisible = true;
this.reset();
//
if (id) {
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');
const res = await SchoolCourseOrderApi.getSchoolCourseOrder(id);
this.formData = res.data;
this.title = "修改驾照报名订单";
} 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");
}
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>

View File

@ -8,17 +8,10 @@
<el-form-item label="用户姓名" prop="userName">
<el-input v-model="queryParams.userName" placeholder="请输入用户姓名" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="课程名字" prop="courseName">
<el-input v-model="queryParams.courseName" placeholder="请输入课程名字" clearable @keyup.enter.native="handleQuery"/>
</el-form-item>
<el-form-item label="主负责教练姓名" prop="coachUserName">
<el-form-item label="负责教练" prop="coachUserName">
<el-input v-model="queryParams.coachUserName" placeholder="请输入主负责教练姓名" clearable @keyup.enter.native="handleQuery"/>
</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-button type="primary" icon="el-icon-search" @click="handleQuery">搜索</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="userName" />
<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="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">
<el-table-column label="用户性别" align="center" prop="userSex">
<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>
</el-table-column>
<el-table-column label="订单状态" align="center" prop="paymentStatus" />
<el-table-column label="是否已面签" align="center" prop="isSign">
<template slot-scope="scope">
<el-tag v-if="scope.row.isSign == 1" type="success"></el-tag>
@ -61,7 +65,11 @@
</template>
</el-table-column>
<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">
<template v-slot="scope">
<el-button size="mini" type="text" icon="el-icon-edit" @click="openForm(scope.row.id)">修改</el-button>