Commit 44b91c6a by 裴梁博

Merge branch 'feature/v1/plb' into 'master'

修改诊前挂号

See merge request !17
parents b817b20b b1cdb497
......@@ -61,4 +61,13 @@ export function totalOrderPUT(data) {
method: 'put',
data: data
})
}
// 查询医生列表
export function doctorListGET(query) {
return request({
url: "/system/doctor/list",
method: "get",
params: query,
});
}
\ No newline at end of file
<!--
* @Author: ‘巴博尔’ 2164119982@qq.com
* @Date: 2023-12-04 15:56:04
* @LastEditors: ‘巴博尔’ 2164119982@qq.com
* @LastEditTime: 2023-12-06 09:49:26
* @FilePath: \peizhen-vue\src\views\orderManagement\zqghOrder\index.vue
* @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
<template>
<div class="app-container">
<el-form
......@@ -265,9 +273,14 @@
<el-table-column
label="订单类型"
align="center"
prop=""
key=""
></el-table-column>
prop="orderType"
key="orderType"
>
<template slot-scope="{ row }">
<span v-if="row.orderType == 0">小程序</span>
<span v-if="row.orderType == 1">美团</span>
</template>
</el-table-column>
<el-table-column
label="创建时间"
align="center"
......@@ -311,7 +324,8 @@
<el-button
size="large"
type="text"
v-if="[0, 1, 7, 8, '0', '1', '7', '8'].includes(scope.row.tstatus)"
@click="handleClickCancell(scope.row)"
v-if="[1, '1'].includes(scope.row.tstatus)"
>取消</el-button
>
</template>
......@@ -336,9 +350,9 @@
<el-form ref="form" :model="form" :rules="rules" label-width="100px">
<el-row>
<el-col :span="12">
<el-form-item label="订单类型" prop="orderId">
<el-form-item label="订单类型" prop="orderType">
<el-select
v-model="form.orderId"
v-model="form.orderType"
clearable
placeholder="请选择订单类型"
style="width: 270px"
......@@ -347,11 +361,11 @@
v-for="item in [
{
label: '小程序',
value: '0',
value: 0,
},
{
label: '美团',
value: '1',
value: 1,
},
]"
:key="item.value"
......@@ -363,9 +377,9 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="用户手机号" prop="orderId">
<el-form-item label="用户手机号" prop="userPhone">
<el-input
v-model="form.orderId"
v-model="form.userPhone"
placeholder="请输入用户手机号"
style="width: 270px"
maxlength="11"
......@@ -375,28 +389,29 @@
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="订单号" prop="orderId">
<el-form-item label="订单号" prop="orderSn">
<el-input
v-model="form.orderId"
v-model="form.orderSn"
placeholder="请输入订单号"
style="width: 270px"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="城市" prop="orderId">
<el-form-item label="城市" prop="cityId">
<el-select
v-model="form.orderId"
v-model="form.cityId"
clearable
placeholder="请选择城市"
filterable
style="width: 270px"
@change="changeCityId"
>
<el-option
v-for="item in []"
:key="item.value"
:label="item.label"
:value="item.value"
v-for="item in cityVoList"
:key="item.id"
:label="item.name"
:value="item.id"
>
</el-option>
</el-select>
......@@ -405,9 +420,9 @@
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="订单价" prop="orderId">
<el-form-item label="订单价" prop="payMoney">
<el-input-number
v-model="form.orderId"
v-model="form.payMoney"
:min="0"
label="订单价"
:precision="2"
......@@ -418,19 +433,21 @@
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="医院" prop="orderId">
<el-form-item label="医院" prop="hid">
<el-select
v-model="form.orderId"
v-model="form.hid"
clearable
placeholder="请选择医院"
filterable
style="width: 270px"
:disabled="form.cityId ? false : true"
@change="changeHId"
>
<el-option
v-for="item in []"
:key="item.value"
:label="item.label"
:value="item.value"
v-for="item in hospitalList"
:key="item.id"
:label="item.name"
:value="item.id"
>
</el-option>
</el-select>
......@@ -439,54 +456,44 @@
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="科室" prop="orderId">
<el-form-item label="科室" prop="didName">
<el-input
v-model="form.orderId"
v-model="form.didName"
placeholder="请输入科室"
style="width: 270px"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="医生" prop="orderId">
<el-input
v-model="form.orderId"
placeholder="请输入医生"
style="width: 270px"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="用户姓名" prop="orderId">
<el-input
v-model="form.orderId"
placeholder="请输入用户姓名"
maxlength="5"
style="width: 270px"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="用户手机号" prop="orderId">
<el-input
v-model="form.orderId"
placeholder="请输入用户手机号"
<el-form-item label="医生" prop="doctorId">
<el-select
v-model="form.doctorId"
clearable
placeholder="请选择医生"
filterable
style="width: 270px"
maxlength="11"
/>
:disabled="form.hid ? false : true"
>
<el-option
v-for="item in doctorList"
:key="item.id"
:label="item.name"
:value="item.id"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="预约时间" prop="orderId">
<el-form-item label="预约时间" prop="timeOfAppointment">
<el-date-picker
v-model="form.orderId"
v-model="form.timeOfAppointment"
type="datetime"
placeholder="请选择预约时间"
style="width: 270px"
value-format="yyyy-MM-dd HH:mm:ss"
>
</el-date-picker>
</el-form-item>
......@@ -495,14 +502,14 @@
</el-row>
<el-row>
<el-col :span="24">
<el-form-item label="备注" prop="orderId">
<el-form-item label="备注" prop="remark">
<el-input
type="textarea"
:rows="2"
placeholder="请输入备注"
maxlength="100"
show-word-limit
v-model="form.textarea"
v-model="form.remark"
style="width: calc(100% - 100px)"
>
</el-input>
......@@ -539,6 +546,43 @@ import {
addZqghOrder,
updateZqghOrder,
} from "@/api/orderManagement/zqghOrder";
import {
addThirdOrderPOST,
cityVoListGET,
hospitalListGET,
servicesListGET,
companyListGET,
employeesListGET,
totalOrderPUT,
doctorListGET,
} from "@/api/addForm/index";
import { listByIds } from "@/api/system/oss";
const validatePhone = (rule, value, callback) => {
if (!value) {
callback(new Error("手机号不能为空"));
}
//正则表达式进行验证手机号,从1开始,第二位是35789中的任意一位,以9数字结尾
if (!/^1[35789]\d{9}$/.test(value)) {
callback(new Error("手机号格式不正确"));
}
callback();
};
const validateIsCardId = (rule, value, callback) => {
if (!value) {
return new Error("请输入身份证号)");
} else {
const reg =
/^\d{6}(18|19|20)?\d{2}(0[1-9]|1[0-2])(([0-2][1-9])|10|20|30|31)\d{3}(\d|X|x)$/;
const card = reg.test(value);
if (!card) {
callback(new Error("身份证号格式有误!"));
} else {
callback();
}
}
};
export default {
name: "ZqghOrder",
......@@ -573,6 +617,8 @@ export default {
pageNum: 1,
pageSize: 10,
orderSn: undefined,
yStatus: undefined,
orderType: undefined,
// orderId: undefined,
// hid: undefined,
// did: undefined,
......@@ -586,25 +632,89 @@ export default {
// 表单参数
form: {},
// 表单校验
rules: {},
rules: {
//blur change
orderType: [
{ required: true, message: "订单类型不能为空", trigger: "change" },
],
userPhone: [
{ required: true, message: "用户手机号不能为空", trigger: "blur" },
{
required: true,
trigger: "blur",
min: 11,
max: 11,
message: "长度不符合",
},
{ required: true, trigger: "blur", validator: validatePhone },
],
orderSn: [
{ required: true, message: "订单号不能为空", trigger: "blur" },
],
cityId: [
{ required: true, message: "城市不能为空", trigger: "change" },
],
payMoney: [
{ required: true, message: "订单价不能为空", trigger: "blur" },
],
hid: [{ required: true, message: "医院不能为空", trigger: "change" }],
didName: [{ required: true, message: "科室不能为空", trigger: "blur" }],
doctorId: [
{ required: true, message: "医生不能为空", trigger: "change" },
],
timeOfAppointment: [
{ required: true, message: "预约时间不能为空", trigger: "change" },
],
},
VisitorData: {
name: "",
sex: "",
idcard: "",
isAdult: "",
},
cityVoList: [],
hospitalList: [],
doctorList: [],
};
},
created() {
this.getList();
},
methods: {
handleClickCancell(row) {
let self = this;
self
.$confirm("是否确认取消此项?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(async () => {
const { code } = await totalOrderPUT({
id: row.toOrderId,
status: 7,
});
if (code === 200) {
self.$modal.msgSuccess("取消成功");
self.getList();
}
})
.catch(() => {
self.$message({
type: "info",
message: "已取消删除",
});
});
},
clickSeeROWrEM(text, title) {
this.openArticle = true;
this.rowArticle = this.replaceSpecialChar(text);
this.openArticleTitle = title;
this.openArticle = true;
},
replaceSpecialChar(detail) {
if (!detail) {
return "";
}
var content = detail.replaceAll(
/<img[^>]*>/gi,
function (match, capture) {
......@@ -640,21 +750,31 @@ export default {
reset() {
this.form = {
id: undefined,
orderId: undefined,
businessId: 6,
orderType: undefined,
userPhone: undefined,
orderSn: undefined,
cityId: undefined,
payMoney: undefined,
hid: undefined,
did: undefined,
didName: undefined,
doctorId: undefined,
timeOfAppointment: undefined,
status: undefined,
overTime: undefined,
voucher: undefined,
isCal: undefined,
delFlag: undefined,
createBy: undefined,
createTime: undefined,
updateBy: undefined,
updateTime: undefined,
remark: undefined,
// orderId: undefined,
// hid: undefined,
// did: undefined,
// doctorId: undefined,
// timeOfAppointment: undefined,
// status: undefined,
// overTime: undefined,
// voucher: undefined,
// isCal: undefined,
// delFlag: undefined,
// createBy: undefined,
// createTime: undefined,
// updateBy: undefined,
// updateTime: undefined,
// remark: undefined,
};
this.resetForm("form");
},
......@@ -679,6 +799,43 @@ export default {
this.reset();
this.open = true;
this.title = "新增订单";
this.cityVoListAxios();
},
async cityVoListAxios() {
const { code, data } = await cityVoListGET();
console.log("cityVoListGET", code, data);
if (code === 200) {
this.cityVoList = data;
}
},
changeCityId(e) {
console.log("changeCityId", e);
this.$set(this.form, "hid", undefined);
this.$set(this.form, "doctorId", undefined);
this.hospitalListAxios(e);
},
async hospitalListAxios(cityId) {
const { code, data } = await hospitalListGET({
cityId,
});
console.log("hospitalListGET", code, data);
if (code === 200) {
this.hospitalList = data;
}
},
changeHId(e) {
console.log('changeHId',e);
this.$set(this.form, "doctorId", undefined);
this.doctorListAxios(e);
},
async doctorListAxios(hid) {
const { code, rows } = await doctorListGET({
hid,
});
console.log("doctorListGET", code, rows);
if (code === 200) {
this.doctorList = rows;
}
},
/** 修改按钮操作 */
handleUpdate(row) {
......@@ -698,17 +855,17 @@ export default {
if (valid) {
this.buttonLoading = true;
if (this.form.id != null) {
updateZqghOrder(this.form)
.then((response) => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
})
.finally(() => {
this.buttonLoading = false;
});
// updateZqghOrder(this.form)
// .then((response) => {
// this.$modal.msgSuccess("修改成功");
// this.open = false;
// this.getList();
// })
// .finally(() => {
// this.buttonLoading = false;
// });
} else {
addZqghOrder(this.form)
addThirdOrderPOST(this.form)
.then((response) => {
this.$modal.msgSuccess("新增成功");
this.open = false;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment