鹿和sa0ChunLuyu 1 year ago
commit 0998e10219

@ -162,6 +162,7 @@ class ComboController extends Controller
$list = $list->where('combos.name', 'like', '%' . $searchInfo['name'] . '%');
}
$list=$list->where(['combos.status'=>1]);
$count = $list->count();
$list = $list
->skip(($page - 1) * $pageSize) // 跳过前9999条记录

@ -24,9 +24,28 @@ class OrderController extends Controller
$list = $list->where('order_number', $searchInfo['order_number'] );
}
$count=$list->count();
$list=$list
$list=$list->orderBy('id','desc')
->skip(($page-1)*$pageSize) // 跳过前9999条记录
->take($pageSize)->get();
return \Yz::Return(true,"查询完成",['list'=>$list,'count'=>$count]);
}
public function GetDetail()
{
$id = request('id');
$order=DB::table('orders')->where(['id'=>$id])->first();
return \Yz::Return(true,"查询完成",['info'=>$order]);
}
public function Save()
{
$info = request('info');
$date=[
'note'=>$info['note']
];
$u=DB::table('orders')->where(['id'=>$info['id']])->update($date);
if($u){
return \Yz::Return(true,"操作完成",[]);
}else{
return \Yz::echoError1("保存失败");
}
}
}

@ -32,9 +32,9 @@ class AspNetZhuanController extends Controller
return true;
}
//使用预存款
public static function UseYuCunKuan($hzid,$yucunkuan,$yyid,$yucunkuanleixing,$caozuorenid,$caozuorenmigncheng,$beizhu,$dingdanshijian)
public static function UseYuCunKuan($ghzid,$yucunkuan,$yyid,$yucunkuanleixing,$caozuorenid,$caozuorenmigncheng,$beizhu,$dingdanshijian)
{
$res = self::Get(self::$JF_BaseUrl . '?type=5' . '&hzid=' . $hzid. '&yucunkuan=' . $yucunkuan.'&yyid='.$yyid.'&yucunkuanleixing='.$yucunkuanleixing.'&caozuorenid='.$caozuorenid.'&caozuorenmigncheng='.urlencode($caozuorenmigncheng).'&beizhu='.urlencode($beizhu).'&dingdanshijian='.urlencode($dingdanshijian));
$res = self::Get(self::$JF_BaseUrl . '?type=5' . '&ghzid=' . $ghzid. '&yucunkuan=' . $yucunkuan.'&yyid='.$yyid.'&yucunkuanleixing='.$yucunkuanleixing.'&caozuorenid='.$caozuorenid.'&caozuorenmigncheng='.urlencode($caozuorenmigncheng).'&beizhu='.urlencode($beizhu).'&dingdanshijian='.urlencode($dingdanshijian));
return true;
}

@ -53,9 +53,9 @@ class HomeController extends Controller
'icon' => '/assets/h5/tuanjianyuyue.png'
]],
'button' => [[[
'message' => '暂未开放',
'message' => '',
'name' => '健康问卷',
'jump' => '/pages/main/cjwt/cjwt',
'jump' => '/pages/main/question/choose/choose',
'icon' => '/assets/h5/a_jiankangwenjuan.png'
],
// [
@ -124,9 +124,9 @@ class HomeController extends Controller
{
$list = [
[
'message' => '暂未开放',
'message' => '',
'name' => '检前健康评估',
'url' => '',
'url' => '/pages/main/question/question/question?id=4',
'logo' => '/assets/h5/zhuyishixiang.png'
],
[

@ -309,7 +309,7 @@ class OrderController extends Controller
if($jifen>$all_jifen) return \Yz::echoError1("用户剩余积分不足");
}
if($yucunkuan>0) {
return \Yz::echoError1("暂不支持预存款");
// return \Yz::echoError1("暂不支持预存款");
$all_yucunkuan= $AspNet::GetJiFen_YuCunKuan(2,$person->ghzid);
if($yucunkuan>$all_yucunkuan) return \Yz::echoError1("用户剩余预存款不足");
}
@ -371,14 +371,14 @@ class OrderController extends Controller
}
if($yucunkuan>0) {
$yucunkuan_dikou_status=false;
// $yucunkuan_dikou_status= $AspNet::UseYuCunKuan();
$yucunkuan_dikou_status= $AspNet::UseYuCunKuan($person->ghzid,-$yucunkuan,$yyid,0,$insert,'tj_h5','抵扣体检H5订单',$now_datetime);
}
}
if ($insert and $up_plan and $jifen_dikou_status and $yucunkuan_dikou_status) {
DB::commit();
$action = false;
if ($true_price === 0) {
if ($true_price == 0) {
//如果是免费的,直接去预约
$yuyue = self::Finish($order_num);
if ($yuyue['status'] === true) {

@ -2,6 +2,7 @@
namespace App\Http\Controllers\API\H5;
use App\Http\Controllers\API\AspNetZhuanController;
use App\Http\Controllers\API\XCXApiController;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
@ -109,6 +110,8 @@ class PayController extends Controller
if (!$orderInfo) return \Yz::echoError1("未找到有效订单");
if ($orderInfo->status !== 2) return \Yz::echoError1("订单状态异常。当前状态:" . $orderInfo->status);
if ($orderInfo->check_status == 2) return \Yz::echoError1("已登记体检,禁止退款");
$person=DB::table('web_user_person')->where(['id' => $orderInfo->person_id])->first();
if(!$person) return \Yz::echoError1("用户不存在");
//调用思信取消,恢复号源
$ap = new OrderController();
$cancel = $ap->cancel_appointment($orderInfo->hospital_id, [
@ -130,6 +133,27 @@ class PayController extends Controller
return \Yz::echoError1("退款失败" . $res['data']['refund_state']);
}
}
$now_datetime=date('Y-m-d H:i:s');
//调用接口恢复积分和预存款
$env=config('app.globals.Env');
$AspNet=new AspNetZhuanController();
$jifen_huifu_status=true;
$yucunkuan_huifu_status=true;
$yyid=$orderInfo->hospital_id;
if($yyid==1) $yyid=6;
if($env=='pro') { //如果是正式环境
if($orderInfo->jifen>0) {
$jifen_huifu_status=false;
$jifen_huifu_status= $AspNet::UseJiFen($person->ghzid,$orderInfo->jifen,$yyid,$orderInfo->id,'tj_h5','抵扣体检H5订单',$now_datetime);
}
if($orderInfo->yucunkuan>0) {
$yucunkuan_huifu_status=false;
$yucunkuan_huifu_status= $AspNet::UseYuCunKuan($person->ghzid,$orderInfo->yucunkuan,$yyid,0,$orderInfo->id,'tj_h5','抵扣体检H5订单',$now_datetime);
}
}
DB::table('orders')->where(['id' => $id])->update([
'status' => 5
]);

@ -98,6 +98,8 @@ Route::group(['middleware' => ['checktoken', 'log'], 'prefix' => 'v1'], function
Route::post('admin/ComboCrowdSave', 'App\Http\Controllers\API\Admin\YeWu\ComboCrowdController@Save');//套餐适应人群保存
Route::post('admin/ComboCrowdDel', 'App\Http\Controllers\API\Admin\YeWu\ComboCrowdController@Del');//套餐适应人群删除
Route::post('admin/OrderGetList', 'App\Http\Controllers\API\Admin\YeWu\OrderController@GetList');//订单列表
Route::post('admin/OrderGetDetail', 'App\Http\Controllers\API\Admin\YeWu\OrderController@GetDetail');//订单详情
Route::post('admin/OrderSave', 'App\Http\Controllers\API\Admin\YeWu\OrderController@Save');//订单保存
Route::post('admin/QuestionGetList', 'App\Http\Controllers\API\Admin\YeWu\QuestionController@GetList');//问答列表
Route::post('admin/QuestionSave', 'App\Http\Controllers\API\Admin\YeWu\QuestionController@Save');//保存题目
Route::post('admin/QuestionGetDetail', 'App\Http\Controllers\API\Admin\YeWu\QuestionController@GetDetail');//题目详情

@ -225,6 +225,14 @@ export const ComboCrowdDel = (data={}) => {
export const OrderGetList = (data={}) => {
return axios({url:import.meta.env.VITE_APP_API+'v1/admin/OrderGetList',data:data})
}
//获取订单详情
export const OrderGetDetail = (data={}) => {
return axios({url:import.meta.env.VITE_APP_API+'v1/admin/OrderGetDetail',data:data})
}
//保存订单信息
export const OrderSave = (data={}) => {
return axios({url:import.meta.env.VITE_APP_API+'v1/admin/OrderSave',data:data})
}
//获取问答列表
export const QuestionGetList = (data={}) => {
return axios({url:import.meta.env.VITE_APP_API+'v1/admin/QuestionGetList',data:data})

@ -48,7 +48,7 @@
</el-row>
</el-header>
<el-container>
<el-aside style="overflow-y: scroll; height: calc(100vh - 60px) ;">
<el-aside >
<el-menu class="el-menu-vertical-demo" @open="handleOpen" @close="handleClose" :default-active="activeMenu"
:collapse="isCollapse" >
<el-menu-item index="2-222" @click="to('dashboard')">
@ -159,6 +159,7 @@ watch(()=>router.currentRoute.value,(newVal,oldVal)=>{
console.log(url)
activeMenu.value=url
window.location.href = "./#/" + url
window.scroll(0, 0);
}
const menuList = () => { //
GetAdminBaseMenuList().then(res => {

@ -23,6 +23,7 @@
<el-table-column prop="id_number" label="身份证" width="160" />
<el-table-column prop="phone" label="电话" />
<el-table-column prop="order_number" label="订单号" />
<el-table-column prop="title" label="订单名称" />
<el-table-column prop="type" label="类型">
<template #default="scope">
<span v-if="scope.row.type==1" style="color: #409EFF;"></span>
@ -39,10 +40,16 @@
<span v-if="scope.row.status==5" style="color: #F56C6C;">退</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 label="操作" width="100">
<template #default="scope">
<el-button type="primary" :icon="Edit" circle />
<el-button type="primary" @click="EditFunc(scope.row)" :icon="Edit" circle />
</template>
</el-table-column>
</el-table>
@ -51,6 +58,64 @@
:page-sizes="[15, 50, 100, 200]" layout="total,sizes, prev, pager, next" :total="total"
@size-change="PageSizeChange" @current-change="PageCurrentChange" />
</div>
<el-dialog v-model="dialogVisible" title="订单详情">
<div class="chuansuokuang" v-loading="loading">
<el-form v-if="Info" :model="Info" label-width="100" style="max-width: 600px">
<el-form-item label="姓名:">
{{Info.name}}
</el-form-item>
<el-form-item label="电话:">
{{Info.phone}}
</el-form-item>
<el-form-item label="身份证:">
{{Info.id_number}}
</el-form-item>
<el-form-item label="订单名称:">
{{Info.title}}
</el-form-item>
<el-form-item label="类型:">
<span v-if="Info.type==1"></span><span v-if="Info.type==2"></span>
</el-form-item>
<el-form-item label="实付金额:">
{{Info.true_price}}
</el-form-item>
<el-form-item label="使用积分:">
{{Info.jifen}}
</el-form-item>
<el-form-item label="预存款抵扣:">
{{Info.yucunkuan}}
</el-form-item>
<el-form-item label="订单状态:">
<span v-if="Info.status==1" style="color: #409EFF;"></span>
<span v-if="Info.status==2" style="color: #E6A23C;"></span>
<span v-if="Info.status==3" style="color: #909399;"></span>
<span v-if="Info.status==4" style="color: #67C23A;"></span>
<span v-if="Info.status==5" style="color: #F56C6C;">退</span>
</el-form-item>
<el-form-item label="到检状态:">
<span v-if="Info.status==1" style="color: #ffb682;"></span>
<span v-if="Info.status==2" style="color: #9dd978;"></span>
</el-form-item>
<el-form-item v-if="Info.pay_time" label="支付时间:">
{{Info.pay_time}}
</el-form-item>
<el-form-item v-if="Info.appointment_date" label="预约时间:">
{{Info.appointment_date}} {{Info.appointment_time}}
</el-form-item>
<el-form-item label="备注:">
<el-input v-model="Info.note" :rows="3" type="textarea" placeholder="备注信息" />
</el-form-item>
</el-form>
</div>
<template #footer>
<span class="dialog-footer">
<el-button @click="dialogVisible = false">取消</el-button>
<el-button type="primary" @click="Save()">
确定
</el-button>
</span>
</template>
</el-dialog>
</div>
</template>
@ -63,7 +128,9 @@
ElMessage
} from 'element-plus'
import {
OrderGetList
OrderGetList,
OrderGetDetail,
OrderSave
} from '@/api/api.js'
import {
Edit
@ -100,6 +167,38 @@ import {
}
})
}
let dialogVisible = ref(false);
let Info = ref(null);
const EditFunc = (row) => {
dialogVisible.value = true
GetDetailFunc(row.id)
}
const GetDetailFunc = (id) => {
loading.value = true
OrderGetDetail({
id: id
}).then(res => {
loading.value = false
Info.value = res.data.info
})
}
const Save = () => {
loading.value = true
OrderSave({
info: Info.value
}).then(res => {
loading.value = false
if(res.status){
ElMessage({
message: '保存成功',
type: 'success',
})
dialogVisible.value = false
}else{
ElMessage.error(res.msg)
}
})
}
onMounted(() => {
GetList()
})

@ -124,7 +124,7 @@
}
const itemClasses=(item)=>{
return {
'status_zhengchang': item.type === 0,
'status_zhengchang': item.type === 1,
'plan_block': true,
'status_zhanyong':item.status===2,
'status_xuanzhong':item.selected===true,

@ -281,7 +281,7 @@
</view>
</view>
</view>
<view class="botm_blank_wrapper" style="font-size: 18rpx;color: #ccc;">10152206</view>
<view class="botm_blank_wrapper" style="font-size: 18rpx;color: #ccc;">10171926</view>
</view>
</view>
</template>

Loading…
Cancel
Save