更新 WEB端加 订单查询功能

main
鹿和sa0ChunLuyu 6 months ago
parent be5919da93
commit 6a48f7bdeb

@ -275,6 +275,7 @@ class OrderController extends Controller
return \Yz::echoError1('操作失败');
}
}
//客服预约,只占用号源
public function CreateYuYueOrder()
{
@ -500,6 +501,17 @@ class OrderController extends Controller
}
}
public function SearchOrder(Request $request)
{
$order_start = $request->post('order_start');
$order_end = $request->post('order_end');
$list = DB::table('orders');
$list = $list->where('created_at', '>=', $order_start);
$list = $list->where('created_at', '<=', $order_end);
$list = $list->orderBy('id', 'desc')->get();
return \Yz::return(true, "操作成功", ['list' => $list]);
}
public function export()
{
$dates = request('dates');
@ -570,6 +582,7 @@ class OrderController extends Controller
$check = $peis::Post('套餐项目检查', $hospital, $data);
return $check;
}
public function generateOrderNumber()
{
// 获取当前时间的时间戳(精确到毫秒)

@ -122,6 +122,7 @@
color: #909399;
font-weight: bold;
}
.disnone {
display: none;
}
@ -132,6 +133,56 @@
<body>
<div id="app">
<el-config-provider :button="button_config" :locale="elZh">
<el-dialog v-model="order_dialog_show" title="订单查询" width="1200">
<div>
<div class="select_flex_wrapper">
<el-form label-width="80px" inline @submit.prevent="handleSubmit">
<el-form-item label="开始时间">
<el-date-picker v-model="order_start" type="datetime" placeholder="请选择" format="YYYY-MM-DD HH:mm:ss"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
<el-form-item label="结束时间">
<el-date-picker v-model="order_end" type="datetime" placeholder="请选择" format="YYYY-MM-DD HH:mm:ss"
value-format="YYYY-MM-DD HH:mm:ss"></el-date-picker>
</el-form-item>
</el-form>
<el-button type="primary" @click="orderSearchClick()">搜索</el-button>
</div>
<div>
<el-table border :data="order_list" style="width: 100%" height="calc(50vh - 45px)" show-overflow-tooltip>
<el-table-column prop="name" :label="`姓名【${order_list.length}人】`" width="130"></el-table-column>
<el-table-column prop="id_number" label="身份证" width="160"></el-table-column>
<el-table-column prop="phone" label="电话"></el-table-column>
<el-table-column prop="order_number" label="订单号"></el-table-column>
<el-table-column prop="title" label="订单名称"></el-table-column>
<el-table-column prop="type" label="类型">
<template #default="scope">
<span v-if="scope.row.type==1" style="color: #409EFF;">个检</span>
<span v-if="scope.row.type==2" style="color: #E6A23C;">团检</span>
</template>
</el-table-column>
<el-table-column prop="price" label="金额"></el-table-column>
<el-table-column prop="" label="状态">
<template #default="scope">
<span v-if="scope.row.status==1" style="color: #409EFF;">待支付</span>
<span v-if="scope.row.status==2" style="color: #E6A23C;">已支付</span>
<span v-if="scope.row.status==3" style="color: #909399;">交易关闭</span>
<span v-if="scope.row.status==4" style="color: #67C23A;">已完成</span>
<span v-if="scope.row.status==5" style="color: #F56C6C;">已退款</span>
<span v-if="scope.row.status==6" style="color: #3a8c7e;">已转赠</span>
</template>
</el-table-column>
<el-table-column prop="check_status" label="到检状态">
<template #default="scope">
<span v-if="scope.row.check_status==1" style="color: #ffb682;">待检</span>
<span v-if="scope.row.check_status==2" style="color: #9dd978;">已到检</span>
</template>
</el-table-column>
<el-table-column prop="created_at" label="创建时间" width="180"></el-table-column>
</el-table>
</div>
</div>
</el-dialog>
<el-dialog v-model="combo_dialog_show" title="选择套餐" width="800">
<div>
<div>
@ -145,7 +196,8 @@
</div>
</div>
<el-table border :data="combo_list_show" style="width: 100%" height="calc(50vh - 45px)" show-overflow-tooltip
ref="combo_table_ref" @row-click="comboRowClick" :row-class-name="comboRowClassName" :default-sort="{ prop: 'price' }">
ref="combo_table_ref" @row-click="comboRowClick" :row-class-name="comboRowClassName"
:default-sort="{ prop: 'price' }">
<el-table-column property="combo_id" label="套餐ID" width="120"></el-table-column>
<el-table-column property="name" label="套餐名称"></el-table-column>
<el-table-column label="性别" width="60">
@ -249,9 +301,11 @@
<el-input v-model="search_input" placeholder="" @keyup.enter="searchClick"/>
</el-form-item>
<el-form-item label="科室" style="margin-left: -50px">
<el-select v-model="search_appointment" placeholder="请选择科室" style="width: 150px" @change="searchClick()" >
<el-select v-model="search_appointment" placeholder="请选择科室" style="width: 150px"
@change="searchClick()">
<el-option label="全部" value="0"></el-option>
<el-option v-for="(item,index) in ResKeShilist" :label="item.keshi_name" :value="item.keshi_id" :key="item.keshi_id" ></el-option>
<el-option v-for="(item,index) in ResKeShilist" :label="item.keshi_name" :value="item.keshi_id"
:key="item.keshi_id"></el-option>
</el-select>
</el-form-item>
</el-form>
@ -266,7 +320,6 @@
</div>
</el-form-item>
</el-form>
</div>
</div>
<div>
@ -308,6 +361,7 @@
<span v-if="!!pay_info" style="font-size: 14px;color: #bbb;"> 原价:¥{{ pay_info.original_price }}</span>
</div>
<div>
<el-button @click="openOrderDialog()" type="primary">订单查询</el-button>
<el-button @click="removeAllClick()" type="danger">清空</el-button>
<el-button @click="removeItemClick()" type="danger">移除项目</el-button>
<el-button @click="planDialogShowClick()" type="primary">预约登记</el-button>
@ -543,7 +597,8 @@
BuyInfo: "/api/Web/BuyInfo",
Create: "/api/Web/Create",
GetDayPlanList: "/api/H5/GetDayPlanList",
CreateYuYueOrder: "/api/Web/CreateYuYueOrder"
CreateYuYueOrder: "/api/Web/CreateYuYueOrder",
OrderSearch: "/api/Web/SearchOrder"
};
const $api = (key) => {
return api_map[key];
@ -691,11 +746,26 @@
}
return window.$message().error(response.data.msg)
}
})
}
const order_start = ref(formatDatetime(new Date(), "YYYY-MM-DD") + ' 00:00:00')
const order_end = ref(formatDatetime(new Date(), "YYYY-MM-DD") + ' 23:59:59')
const order_dialog_show = ref(false)
const order_list = ref([])
const orderSearchClick = async () => {
const response = await axios.post($api("OrderSearch"), {
order_start: order_start.value,
order_end: order_end.value,
});
window.$response(response.data, () => {
order_list.value = response.data.data.list;
});
}
const openOrderDialog = () => {
order_dialog_show.value = true
}
let ResKeShilist = ref([]);
const getItemGetList = async () => {
const response = await axios.post($api("ItemGetList"), {
@ -1108,16 +1178,20 @@
}
return classname
}
function isEnglishOnly(str) {
// 使用正则表达式检查字符串是否只包含英文字符
return /^[A-Za-z]+$/.test(str);
}
function PlanDateChange() {
getPlanList()
}
function handleSubmit() {
}
onMounted(() => {
getQueryData();
if (input_data.value.hospital == '6') input_data.value.hospital = '1'
@ -1127,6 +1201,12 @@
});
return {
order_start,
order_end,
order_dialog_show,
order_list,
orderSearchClick,
openOrderDialog,
elZh,
getItemGetList,
handleSubmit,

@ -110,6 +110,7 @@ Route::group(['middleware' => ['log'],'prefix' => 'api/Web'], function () {
Route::post('/ItemGetList', 'App\Http\Controllers\API\Web\ItemController@GetList');//Web套餐列表
Route::post('/Create', 'App\Http\Controllers\API\Web\OrderController@Create');//Web套餐列表
Route::post('/CreateYuYueOrder', 'App\Http\Controllers\API\Web\OrderController@CreateYuYueOrder');//客服预约
Route::post('/SearchOrder', 'App\Http\Controllers\API\Web\OrderController@SearchOrder');//订单查询
});
//对外------

Loading…
Cancel
Save