This commit is contained in:
2024-08-07 23:21:43 +08:00
parent cd97268098
commit 4dba55b19a
4 changed files with 323 additions and 112 deletions

View File

@@ -16,11 +16,11 @@ class Hdrdoctorusers extends BaseHttpApi
/**
* 新增医生账户信息
*
* 参数:
* doctor 医生昵称(杨教授) 医生昵称(杨教授) 必须
* username 用户名(手机号) 用户名(手机号) 必须
* hdrdepartment_id 科室 科室 必须
* name 姓名(杨玉环) 姓名(杨玉环) 必须
* 参数:
* doctor 医生昵称(杨教授) 医生昵称(杨教授) 必须
* username 用户名(手机号) 用户名(手机号) 必须
* hdrdepartment_id 科室 科室 必须
* name 姓名(杨玉环) 姓名(杨玉环) 必须
* password 密码a123456 密码a123456 必须
* api/Hdrdoctorusers/addHdrdoctorusers
*/
@@ -81,18 +81,19 @@ class Hdrdoctorusers extends BaseHttpApi
}
}
/**
* 修改医生账户信息
* 修改医生账户信息
* 参数:
* id ID ID 必须
* doctor 医生昵称(杨教授)
* username 用户名(手机号)
* hdrdepartment_id 科室
* name 姓名(杨玉环)
* password 密码a123456
* sex 性别
* 参数:
* id ID ID 必须
* doctor 医生昵称(杨教授)
* username 用户名(手机号)
* hdrdepartment_id 科室
* name 姓名(杨玉环)
* password 密码a123456
* sex 性别
* age 年龄
* address 住址
* api/Hdrdoctorusers/updateHdrdoctorusers
*/
@@ -156,9 +157,7 @@ class Hdrdoctorusers extends BaseHttpApi
* 带分页
* current_page 当前页码
* list_rows 每页显示条数 默认15
* list_rows 每页显示条数 默认15
* doctor 医生昵称(杨教授)
* username 用户名(手机号)
* name 姓名(杨玉环)
* doctor 医生昵称(杨教授)
* username 用户名(手机号)
@@ -187,7 +186,6 @@ class Hdrdoctorusers extends BaseHttpApi
Tools::log_to_write_txt(['获取医生账户信息 入参:'=>input()]);
$api_desc = '获取医生账户信息';
try {
try {
$doctor = input('doctor');
$username = input('username');
@@ -200,17 +198,10 @@ class Hdrdoctorusers extends BaseHttpApi
if(input('doctor')){
$model_obj->whereLike('doctor','%'.input('doctor').'%');
}
}
if(input('username')){
$model_obj->whereLike('username','%'.input('username').'%');
if(input('name')){
$model_obj->whereLike('name','%'.input('name').'%');
}
}
if(input('id')){
if(input('doctor')){
$model_obj->where('doctor',input('doctor'));
@@ -223,9 +214,57 @@ class Hdrdoctorusers extends BaseHttpApi
}
$data = $model_obj->paginate(['page'=>input('current_page',1),'list_rows'=>input('list_rows',15)])
$data = $model_obj->paginate(['page'=>input('current_page',1),'list_rows'=>input('list_rows',15)])
->each(function($item, $key){
$ret_field_name_arr = Tools::delete_str_empty_ele(',,,hdrdepartment_id--name,,,,,,,,,,');
//处理为外键字段+外键对应数据的字段名 egusers_id=>nickname
$ret_field_name2 = [];
foreach ($ret_field_name_arr as $ret_typ_field) {
$exp_arr = explode('--',$ret_typ_field);
//$exp_arr[0] 主表字段,$exp_arr[1] 副表字段
$ret_field_name2[$exp_arr[0]] = [$exp_arr[0],$exp_arr[1]];
}
//返回数据类型处理
$return_type_exp_arr = Tools::delete_str_empty_ele(',,,hdrdepartment_id==field_val,,,,,,,,,,');
//处理为类型+字段
$return_type_exp_arr2 = [];
foreach ($return_type_exp_arr as $ret_type_field) {
$exp_arr = explode('==',$ret_type_field);
$return_type_exp_arr2[$exp_arr[0]] = $exp_arr[1];
}
//返回数组 eg: [id-fa_goods_deal==goods_id,id-fa_goods_deal==goods_id]
$rel_table_arr = Tools::delete_str_empty_ele(',,,hdrdepartment_id-fa_hdrdepartment==id,,,,,,,,,,');
//关联的字段和表
$rel_field_table_arr2 = [];
//关系
foreach ($rel_table_arr as $rel_str) {
$exp_arr = explode('-',$rel_str);
$rel_field_table_arr2[$exp_arr[0]] = [explode('==',$exp_arr[1])[0],explode('==',$exp_arr[1])[1]];
}
foreach($item as $it_key=>$it_val){
if(empty($rel_field_table_arr2[$it_key])){
continue;
}
foreach($return_type_exp_arr as $key=>$val){
$val_arr = explode('==',$val);
if($it_key == $val_arr[0]){
switch($val_arr[1]){
case 'two_arr':
$item[$it_key.'_data'] = Db::table($rel_field_table_arr2[$it_key][0])->where("{$rel_field_table_arr2[$it_key][1]}",$it_val)->select();
break;
case 'one_arr':
$item[$it_key.'_data'] = Db::table($rel_field_table_arr2[$it_key][0])->where("{$rel_field_table_arr2[$it_key][1]}",$it_val)->find();
break;
case 'field_val':
$item[$it_key.'_data'] = Db::table($rel_field_table_arr2[$it_key][0])->where("{$rel_field_table_arr2[$it_key][1]}",$it_val)->value("{$ret_field_name2[$it_key][1]}");
break;
}
}
}
}
return $item;
});

View File

@@ -1,88 +1,182 @@
<?php
namespace app\api\controller;
use think\Db;
use app\common\model\TabConf;
use wanghua\general_utility_tools_php\file\upload\FileUpload;
use wanghua\general_utility_tools_php\tool\Tools;
use wanghua\general_utility_tools_php\Validate;
use think\Controller;
class Hdrquestionnaireanswer extends BaseHttpApi
{
protected $controller_comments = '科室问卷答案';
/**
* desc获取科室问卷答案
*
* api/Hdrquestionnaireanswer/getHdrquestionnaireanswerList
*
<?php
namespace app\api\controller;
use think\Db;
use app\common\model\TabConf;
use wanghua\general_utility_tools_php\file\upload\FileUpload;
use wanghua\general_utility_tools_php\tool\Tools;
use wanghua\general_utility_tools_php\Validate;
use think\Controller;
class Hdrquestionnaireanswer extends BaseHttpApi
{
protected $controller_comments = '科室问卷答案';
/**
* desc获取科室问卷答案
*
* api/Hdrquestionnaireanswer/getHdrquestionnaireanswerList
*
* 参数:
* 带分页
* current_page 当前页码
* 带分页
* current_page 当前页码
* list_rows 每页显示条数 默认15
* id ID
* hdrquestionnairequestion_id 问卷问题ID
* answer 问卷答案
*
* answer 问卷答案
*
* 所有字段说明<span style="color: gray">(可能有部分额外字段未在此体现)</span>
* id ID
* hdrquestionnairequestion_id 问卷问题ID
* answer 问卷答案
* create_time 创建时间
* update_time 更新时间
* authorwh
*/
function getHdrquestionnaireanswerList(){
Tools::log_to_write_txt(['获取科室问卷答案 入参:'=>input()]);
$api_desc = '获取科室问卷答案';
try {
$id = input('id');
$hdrquestionnairequestion_id = input('hdrquestionnairequestion_id');
$answer = input('answer');
$model_obj = Db::table(TabConf::$fa_hdrquestionnaireanswer);
if(input('id')){
$model_obj->where('id',input('id'));
}
if(input('hdrquestionnairequestion_id')){
$model_obj->where('hdrquestionnairequestion_id',input('hdrquestionnairequestion_id'));
}
if(input('answer')){
$model_obj->where('answer',input('answer'));
}
$data = $model_obj->paginate(['page'=>input('current_page',1),'list_rows'=>input('list_rows',15)])
->each(function($item, $key){
return $item;
});
// ['total'] => int(30)
// ['per_page'] => int(15)
// ['current_page'] => int(1)
// ['last_page''] => int(2)
$data = $data->toArray();//包含 data列表
return json(Tools::set_ok('ok',$data));
}catch(\Exception $e){
Tools::log_to_write_txt([
'error'=>'获取科室问卷答案.异常.'.$e->getMessage(),
'参数'=>input(),
'error_info'=>$e->getTraceAsString()
]);
return json(Tools::set_res(500,'操作异常',[]));
}
}
* id ID
* hdrquestionnairequestion_id 问卷问题ID
* answer 问卷答案
* create_time 创建时间
* update_time 更新时间
* authorwh
*/
function getHdrquestionnaireanswerList(){
Tools::log_to_write_txt(['获取科室问卷答案 入参:'=>input()]);
$api_desc = '获取科室问卷答案';
try {
$id = input('id');
$hdrquestionnairequestion_id = input('hdrquestionnairequestion_id');
$answer = input('answer');
$model_obj = Db::table(TabConf::$fa_hdrquestionnaireanswer);
if(input('id')){
$model_obj->where('id',input('id'));
}
if(input('hdrquestionnairequestion_id')){
$model_obj->where('hdrquestionnairequestion_id',input('hdrquestionnairequestion_id'));
}
if(input('answer')){
$model_obj->where('answer',input('answer'));
}
$data = $model_obj->paginate(['page'=>input('current_page',1),'list_rows'=>input('list_rows',15)])
->each(function($item, $key){
return $item;
});
// ['total'] => int(30)
// ['per_page'] => int(15)
// ['current_page'] => int(1)
// ['last_page''] => int(2)
$data = $data->toArray();//包含 data列表
return json(Tools::set_ok('ok',$data));
}catch(\Exception $e){
Tools::log_to_write_txt([
'error'=>'获取科室问卷答案.异常.'.$e->getMessage(),
'参数'=>input(),
'error_info'=>$e->getTraceAsString()
]);
return json(Tools::set_res(500,'操作异常',[]));
}
}
/**
* 新增一个问卷答案
*
* 参数:
* hdrquestionnairequestion_id 问卷问题ID 问卷问题ID 必须
* answer 问卷答案 问卷答案 必须
* api/Hdrquestionnaireanswer/addHdrquestionnaireanswer
*/
function addHdrquestionnaireanswer(){
Tools::log_to_write_txt(['新增一个问卷答案'=>input()]);
$api_desc = '新增一个问卷答案';
Db::startTrans();
try {
$hdrquestionnairequestion_id = input('hdrquestionnairequestion_id');
if(empty($hdrquestionnairequestion_id)){
return json(Tools::set_fail('参数错误.0'));
}
$answer = input('answer');
if(empty($answer)){
return json(Tools::set_fail('参数错误.1'));
}
$data = [
'hdrquestionnairequestion_id'=>$hdrquestionnairequestion_id?:'',
'answer'=>$answer?:'',
];
$dataid = Db::table(TabConf::$fa_hdrquestionnaireanswer)->insertGetId($data);
$this->operateLog('新增一个问卷答案',api_user_info('id'));
Db::commit();
return json(Tools::set_ok('ok',$dataid));
}catch (\Exception $e){
Db::rollback();
Tools::log_to_write_txt([
'error'=>'新增一个问卷答案.异常.'.$e->getMessage(),
'input'=>input(),
'error_info'=>$e->getTraceAsString()
]);
return json(Tools::set_fail());
}
}
/**
* 修改科室问卷答案
* 参数:
* id ID ID 必须
* hdrquestionnairequestion_id 问卷问题ID
* answer 问卷答案
* api/Hdrquestionnaireanswer/updateHdrquestionnaireanswer
*/
function updateHdrquestionnaireanswer(){
Tools::log_to_write_txt(['修改科室问卷答案'=>input()]);
$api_desc = '修改科室问卷答案';
Db::startTrans();
try {
$hdrquestionnairequestion_id = input('hdrquestionnairequestion_id');
$answer = input('answer');
if(empty(input('id'))){
return json(Tools::set_fail('参数错误。0'));
}
$data = [
'hdrquestionnairequestion_id'=>$hdrquestionnairequestion_id?:'',
'answer'=>$answer?:'',
];
$dataid = Db::table(TabConf::$fa_hdrquestionnaireanswer)
->data($data)
->where('id',input('id'))
->update();
$this->operateLog('修改科室问卷答案',api_user_info('id'));
Db::commit();
return json(Tools::set_ok('ok',$dataid));
}catch (\Exception $e){
Db::rollback();
Tools::log_to_write_txt([
'error'=>'修改科室问卷答案.异常.'.$e->getMessage(),
'input'=>input(),
'error_info'=>$e->getTraceAsString()
]);
return json(Tools::set_fail());
}
}

View File

@@ -120,9 +120,7 @@
* current_page 当前页码
* list_rows 每页显示条数 默认15
* doctor 医生昵称(杨教授)
* username 用户名(手机号)
* name 姓名(杨玉环)
* id ID
* doctor 医生昵称(杨教授)
* username 用户名(手机号)
* hdrdepartment_id 科室
@@ -282,6 +280,50 @@
</div>
<div class="api_hdrquestionnaireanswer_getHdrquestionnaireanswerList_response_result"></div>
</div><div id="api_hdrquestionnaireanswer_addHdrquestionnaireanswer">
<div class="markdown_content">
***
```
/**
* 新增一个问卷答案
*
* 参数:
* hdrquestionnairequestion_id 问卷问题ID 问卷问题ID 必须
* answer 问卷答案 问卷答案 必须
* api/Hdrquestionnaireanswer/addHdrquestionnaireanswer
* api/hdrquestionnaireanswer/addHdrquestionnaireanswer
*/
```
</div>
<div>
按需填写其它接口参数:
<textarea name="" id="api_hdrquestionnaireanswer_addHdrquestionnaireanswer_textarea" cols="100" rows="3">/api/hdrquestionnaireanswer/addHdrquestionnaireanswer</textarea>
<a href='JavaScript:;' onclick="DocObject.api_hdrquestionnaireanswer_addHdrquestionnaireanswer()">测试</a>
</div>
<div class="api_hdrquestionnaireanswer_addHdrquestionnaireanswer_response_result"></div>
</div><div id="api_hdrquestionnaireanswer_updateHdrquestionnaireanswer">
<div class="markdown_content">
***
```
/**
* 修改科室问卷答案
* 参数:
* id ID ID 必须
* hdrquestionnairequestion_id 问卷问题ID
* answer 问卷答案
* api/Hdrquestionnaireanswer/updateHdrquestionnaireanswer
* api/hdrquestionnaireanswer/updateHdrquestionnaireanswer
*/
```
</div>
<div>
按需填写其它接口参数:
<textarea name="" id="api_hdrquestionnaireanswer_updateHdrquestionnaireanswer_textarea" cols="100" rows="3">/api/hdrquestionnaireanswer/updateHdrquestionnaireanswer</textarea>
<a href='JavaScript:;' onclick="DocObject.api_hdrquestionnaireanswer_updateHdrquestionnaireanswer()">测试</a>
</div>
<div class="api_hdrquestionnaireanswer_updateHdrquestionnaireanswer_response_result"></div>
</div><div id="api_hdrquestionnairequestion_getHdrquestionnairequestionList">
<div class="markdown_content">
***
@@ -1268,6 +1310,18 @@
$('.api_hdrquestionnaireanswer_getHdrquestionnaireanswerList_response_result').html(JSON.stringify(res, null, "\t"));
$('.api_hdrquestionnaireanswer_getHdrquestionnaireanswerList_response_result').attr('style','color:green');
},'json');
}, api_hdrquestionnaireanswer_addHdrquestionnaireanswer(){
let url = $('#api_hdrquestionnaireanswer_addHdrquestionnaireanswer_textarea').val();
$.post(url,{},function(res) {
$('.api_hdrquestionnaireanswer_addHdrquestionnaireanswer_response_result').html(JSON.stringify(res, null, "\t"));
$('.api_hdrquestionnaireanswer_addHdrquestionnaireanswer_response_result').attr('style','color:green');
},'json');
}, api_hdrquestionnaireanswer_updateHdrquestionnaireanswer(){
let url = $('#api_hdrquestionnaireanswer_updateHdrquestionnaireanswer_textarea').val();
$.post(url,{},function(res) {
$('.api_hdrquestionnaireanswer_updateHdrquestionnaireanswer_response_result').html(JSON.stringify(res, null, "\t"));
$('.api_hdrquestionnaireanswer_updateHdrquestionnaireanswer_response_result').attr('style','color:green');
},'json');
}, api_hdrquestionnairequestion_getHdrquestionnairequestionList(){
let url = $('#api_hdrquestionnairequestion_getHdrquestionnairequestionList_textarea').val();
$.post(url,{},function(res) {

View File

@@ -80,9 +80,7 @@
* current_page 当前页码
* list_rows 每页显示条数 默认15
* doctor 医生昵称(杨教授)
* username 用户名(手机号)
* name 姓名(杨玉环)
* id ID
* doctor 医生昵称(杨教授)
* username 用户名(手机号)
* hdrdepartment_id 科室
@@ -199,6 +197,32 @@
*/
```
***
```
/**
* 新增一个问卷答案
*
* 参数:
* hdrquestionnairequestion_id 问卷问题ID 问卷问题ID 必须
* answer 问卷答案 问卷答案 必须
* api/Hdrquestionnaireanswer/addHdrquestionnaireanswer
* api/hdrquestionnaireanswer/addHdrquestionnaireanswer
*/
```
***
```
/**
* 修改科室问卷答案
* 参数:
* id ID ID 必须
* hdrquestionnairequestion_id 问卷问题ID
* answer 问卷答案
* api/Hdrquestionnaireanswer/updateHdrquestionnaireanswer
* api/hdrquestionnaireanswer/updateHdrquestionnaireanswer
*/
```
***
```
/**