医師検索画面_検索表示は完了
This commit is contained in:
parent
79d241aa18
commit
90944307ae
@ -66,7 +66,6 @@ def search_doc(
|
||||
ultmarc_service: UltmarcViewService = Depends(get_service(UltmarcViewService)),
|
||||
batch_status_service: BatchStatusService = Depends(get_service(BatchStatusService))
|
||||
):
|
||||
# error_log(date("Y/m/d H:i:s") . " [INFO] UserId:" . $UserId . "\r\n", 3, "$execLog");
|
||||
session: UserSession = request.session
|
||||
# バッチ処理中の場合、機能を利用させない
|
||||
# is_batch_processing = batch_status_service.is_batch_processing()
|
||||
@ -82,10 +81,6 @@ def search_doc(
|
||||
ultmarc.doctor_data = ultmarc_doctor_data
|
||||
ultmarc.form_data = ultmarc_doctor_form
|
||||
|
||||
# bio: BioViewModel = bio_service.prepare_bio_view(session)
|
||||
# bio.bio_data = ultmarc_doctor_data
|
||||
# bio.form_data = bio_form
|
||||
|
||||
# セッション書き換え
|
||||
session.update(
|
||||
actions=[
|
||||
|
||||
@ -6,7 +6,6 @@ from typing import Optional
|
||||
from pydantic import BaseModel
|
||||
|
||||
from src.model.db.prefc_master import PrefcMasterModel
|
||||
# from src.model.db.doctor_view import DoctorViewModel
|
||||
from src.model.request.ultmarc_doctor import UltmarcDoctorModel
|
||||
from src.model.view.bio_disp_model import BisDisplayModel
|
||||
from src.system_var import environment
|
||||
@ -16,58 +15,49 @@ class UltmarcDoctorViewModel(BaseModel):
|
||||
subtitle: str = '医師検索一覧'
|
||||
is_batch_processing: Optional[bool]
|
||||
prefc_models: list[PrefcMasterModel]
|
||||
# doctor_models: list[DoctorViewModel]
|
||||
doctor_data: Optional[list[BisDisplayModel]] = []
|
||||
form_data: Optional[UltmarcDoctorModel]
|
||||
|
||||
def display_wholesaler_names(self):
|
||||
display_names = [
|
||||
f'{whs_model.rec_whs_cd}-{whs_model.rec_whs_sub_cd}:{whs_model.nm}'
|
||||
for whs_model in self.doctor_models
|
||||
]
|
||||
return display_names
|
||||
|
||||
def ultmarc_data_json_str(self):
|
||||
def date_handler(obj):
|
||||
return obj.isoformat() if hasattr(obj, 'isoformat') else obj
|
||||
return json.dumps([model.dict() for model in self.doctor_data], ensure_ascii=False, default=date_handler)
|
||||
# ************************** のま作 **************************
|
||||
|
||||
# 医師コード
|
||||
def is_input_dcf_pcf_dr_cd(self):
|
||||
if not self.is_form_submitted():
|
||||
return ''
|
||||
return self.form_data.dcf_pcf_dr_cd
|
||||
return self.form_data.dcf_pcf_dr_cd or ''
|
||||
|
||||
# 氏名(漢字)
|
||||
def is_input_dr_name(self):
|
||||
if not self.is_form_submitted():
|
||||
return ''
|
||||
return self.form_data.dr_name
|
||||
return self.form_data.dr_name or ''
|
||||
|
||||
# 氏名(かな・カナ)
|
||||
def is_input_dr_name_kana(self):
|
||||
if not self.is_form_submitted():
|
||||
return ''
|
||||
return self.form_data.dr_name_kana
|
||||
return self.form_data.dr_name_kana or ''
|
||||
|
||||
# 勤務先コード
|
||||
def is_input_dcf_dsf_inst_cd(self):
|
||||
if not self.is_form_submitted():
|
||||
return ''
|
||||
return self.form_data.dcf_dsf_inst_cd
|
||||
return self.form_data.dcf_dsf_inst_cd or ''
|
||||
|
||||
# 勤務先名(漢字)
|
||||
def is_input_form_inst_name_kanji(self):
|
||||
if not self.is_form_submitted():
|
||||
return ''
|
||||
return self.form_data.form_inst_name_kanji
|
||||
return self.form_data.form_inst_name_kanji or ''
|
||||
|
||||
# 勤務先名(かな・カナ)
|
||||
def is_input_form_inst_name_kana(self):
|
||||
if not self.is_form_submitted():
|
||||
return ''
|
||||
return self.form_data.form_inst_name_kana
|
||||
return self.form_data.form_inst_name_kana or ''
|
||||
|
||||
# 勤務先都道府県
|
||||
def is_selected_prefc_cd(self, selected_prefc_cd):
|
||||
@ -79,73 +69,25 @@ class UltmarcDoctorViewModel(BaseModel):
|
||||
def is_input_blng_sec_name(self):
|
||||
if not self.is_form_submitted():
|
||||
return ''
|
||||
return self.form_data.blng_sec_name
|
||||
return self.form_data.blng_sec_name or ''
|
||||
|
||||
# 診療科目(漢字)
|
||||
def is_input_trt_course_name(self):
|
||||
if not self.is_form_submitted():
|
||||
return ''
|
||||
return self.form_data.trt_course_name
|
||||
return self.form_data.trt_course_name or ''
|
||||
|
||||
# 出身大学(漢字)
|
||||
def is_input_alma(self):
|
||||
if not self.is_form_submitted():
|
||||
return ''
|
||||
return self.form_data.alma
|
||||
return self.form_data.alma or ''
|
||||
|
||||
# 卒年
|
||||
def is_grad_y(self):
|
||||
def is_input_grad_y(self):
|
||||
if not self.is_form_submitted():
|
||||
return ''
|
||||
return self.form_data.grad_y
|
||||
# ************************** のま作 **************************
|
||||
|
||||
# def is_selected_org_kbn(self, selected_org_kbn):
|
||||
# if not self.is_form_submitted():
|
||||
# return ''
|
||||
# return self._selected_value(self.form_data.org_kbn, selected_org_kbn)
|
||||
|
||||
# def is_input_rec_ymd_from(self):
|
||||
# if not self.is_form_submitted():
|
||||
# return ''
|
||||
|
||||
# return self._format_date_string(self.form_data.rec_ymd_from)
|
||||
|
||||
# def is_input_rec_ymd_to(self):
|
||||
# if not self.is_form_submitted():
|
||||
# return ''
|
||||
|
||||
# return self._format_date_string(self.form_data.rec_ymd_to)
|
||||
|
||||
# def is_input_lot_num(self):
|
||||
# if not self.is_form_submitted():
|
||||
# return ''
|
||||
|
||||
# return self.form_data.rec_lot_num or ''
|
||||
|
||||
# def is_selected_data_kbn(self, selected_data_kbn):
|
||||
# if not self.is_form_submitted():
|
||||
# return ''
|
||||
|
||||
# return self._selected_value(self.form_data.data_kbn, selected_data_kbn)
|
||||
|
||||
# def is_input_rev_hsdnymd_srk_from(self):
|
||||
# if not self.is_form_submitted():
|
||||
# return ''
|
||||
|
||||
# return self._format_date_string(self.form_data.rev_hsdnymd_srk_from)
|
||||
|
||||
# def is_input_rev_hsdnymd_srk_to(self):
|
||||
# if not self.is_form_submitted():
|
||||
# return ''
|
||||
|
||||
# return self._format_date_string(self.form_data.rev_hsdnymd_srk_to)
|
||||
|
||||
# def is_checked_iko_flg(self):
|
||||
# if not self.is_form_submitted():
|
||||
# return ''
|
||||
|
||||
# return 'checked' if self.form_data.ikoFlg else ''
|
||||
return self.form_data.grad_y or ''
|
||||
|
||||
def disabled_button(self):
|
||||
return 'disabled' if self.is_data_empty() or self.is_data_overflow_max_length() else ''
|
||||
|
||||
@ -81,20 +81,20 @@ class UltmarcDoctorRepository(BaseRepository):
|
||||
if is_not_empty(parameter.dcf_dsf_inst_cd):
|
||||
# 必ず部分一致で検索
|
||||
parameter.dcf_dsf_inst_cd = f'%{parameter.dcf_dsf_inst_cd}%'
|
||||
where_clauses.append(SQLCondition('com_inst.dcf_dsf_inst_cd',
|
||||
condition.LIKE, 'dcf_dsf_inst_cd'))
|
||||
where_clauses.append(SQLCondition(
|
||||
'com_inst.dcf_dsf_inst_cd', condition.LIKE, 'dcf_dsf_inst_cd'))
|
||||
# 勤務先名(漢字)
|
||||
if is_not_empty(parameter.form_inst_name_kanji):
|
||||
# 必ず部分一致で検索
|
||||
parameter.form_inst_name_kanji = f'%{parameter.form_inst_name_kanji}%'
|
||||
where_clauses.append(SQLCondition('form_inst_name_kanji', condition.LIKE,
|
||||
'form_inst_name_kanji'))
|
||||
where_clauses.append(SQLCondition(
|
||||
'form_inst_name_kanji', condition.LIKE, 'form_inst_name_kanji'))
|
||||
# 勤務先名(かな・カナ)
|
||||
if is_not_empty(parameter.form_inst_name_kana):
|
||||
# 必ず部分一致で検索
|
||||
parameter.form_inst_name_kana = f'%{parameter.form_inst_name_kana}%'
|
||||
where_clauses.append(SQLCondition('form_inst_name_kana', condition.LIKE,
|
||||
'form_inst_name_kana'))
|
||||
where_clauses.append(SQLCondition(
|
||||
'form_inst_name_kana', condition.LIKE, 'form_inst_name_kana'))
|
||||
|
||||
# 勤務先都道府県
|
||||
if is_not_empty(parameter.prefc_cd):
|
||||
@ -104,8 +104,8 @@ class UltmarcDoctorRepository(BaseRepository):
|
||||
if is_not_empty(parameter.blng_sec_name):
|
||||
# 必ず部分一致で検索
|
||||
parameter.blng_sec_name = f'%{parameter.blng_sec_name}%'
|
||||
where_clauses.append(SQLCondition('com_blng_sec.blng_sec_name',
|
||||
condition.LIKE, 'blng_sec_name'))
|
||||
where_clauses.append(SQLCondition(
|
||||
'com_blng_sec.blng_sec_name', condition.LIKE, 'blng_sec_name'))
|
||||
|
||||
# 診療科目(漢字)
|
||||
if is_not_empty(parameter.trt_course_name):
|
||||
|
||||
@ -8,16 +8,10 @@ from src.aws.aws_api_client import AWSAPIClient
|
||||
from src.aws.s3 import S3Client
|
||||
from src.model.internal.session import UserSession
|
||||
from src.model.request.ultmarc_doctor import UltmarcDoctorModel
|
||||
from src.model.view.bio_disp_model import BisDisplayModel
|
||||
from src.model.view.ultmarc_doctor_view_model import UltmarcDoctorViewModel
|
||||
from src.repositories.base_repository import BaseRepository
|
||||
from src.repositories.bio_sales_view_repository import BioSalesViewRepository
|
||||
from src.repositories.prefc_master_repository import PrefcMasterRepository
|
||||
from src.repositories.ultmarc_doctor_repository import UltmarcDoctorRepository
|
||||
from src.repositories.pharmacy_product_master_repository import \
|
||||
PharmacyProductMasterRepository
|
||||
from src.repositories.wholesaler_master_repository import \
|
||||
WholesalerMasterRepository
|
||||
from src.services.base_service import BaseService
|
||||
from src.system_var import constants, environment
|
||||
|
||||
@ -52,58 +46,3 @@ class UltmarcViewService(BaseService):
|
||||
# 医師データを検索
|
||||
ultmarc_doctor_data = self.ultmarc_doctor_repository.fetch_many(parameter=search_params)
|
||||
return ultmarc_doctor_data
|
||||
|
||||
# def search_download_bio_data(self, search_params: BioModel):
|
||||
# # 生物由来データをダウンロードするために、DBから検索した結果をデータフレームに変換
|
||||
# bio_sales_data_frame = self.bio_sales_repository.fetch_as_data_frame(parameter=search_params)
|
||||
# return bio_sales_data_frame
|
||||
|
||||
# def write_excel_file(self, data_frame: pd.DataFrame, user_id: str, timestamp: datetime):
|
||||
# # Excelに書き込み
|
||||
# output_file_path = path.join(constants.BIO_TEMPORARY_FILE_DIR_PATH,
|
||||
# f'Result_{user_id}_{timestamp:%Y%m%d%H%M%S%f}.xlsx')
|
||||
|
||||
# # テンプレートファイルをコピーして出力ファイルの枠だけを作る
|
||||
# shutil.copyfile(
|
||||
# src=constants.BIO_EXCEL_TEMPLATE_FILE_PATH,
|
||||
# dst=output_file_path
|
||||
# )
|
||||
# # ExcelWriterの追記モード(`mode`='a')でファイルを開く
|
||||
# # `engine``='openpyxlは、追記モードでExcelを開くためのおまじない(xlsxしか動作しないが、こちらが出すものなので問題ナシ)
|
||||
# # 既存シートへの書き込みは、`if_sheet_exists='overlay'を指定する
|
||||
# with pd.ExcelWriter(output_file_path, engine='openpyxl', mode='a', if_sheet_exists='overlay') as writer:
|
||||
# # `sheet_name`引数を省略した場合は、「Sheet1」に書き込む。
|
||||
# # DF内のヘッダと連番を書き込みたくない場合、`header`と`index`をFalseに指定する。
|
||||
# # `startrow`と`startcol`で、Excelの書き込み位置を決定する。省略した場合はA1セルから書く。
|
||||
# data_frame.to_excel(writer, header=False, index=False, startrow=1, startcol=0)
|
||||
|
||||
# return output_file_path
|
||||
|
||||
# def write_csv_file(self, data_frame: pd.DataFrame, user_id: str, header: list[str], timestamp: datetime):
|
||||
# # csvに書き込み
|
||||
# output_file_path = path.join(constants.BIO_TEMPORARY_FILE_DIR_PATH,
|
||||
# f'Result_{user_id}_{timestamp:%Y%m%d%H%M%S%f}.csv')
|
||||
# # 横長のDataFrameとするため、ヘッダーの加工処理
|
||||
# header_data = {}
|
||||
# for df_column, header_column in zip(data_frame.columns, header):
|
||||
# header_data[df_column] = header_column
|
||||
|
||||
# header_df = pd.DataFrame([header_data], index=None)
|
||||
# output_df = pd.concat([header_df, data_frame])
|
||||
# # ヘッダー行としてではなく、1レコードとして出力する
|
||||
# output_df.to_csv(output_file_path, index=False, header=False)
|
||||
|
||||
# return output_file_path
|
||||
|
||||
# def upload_bio_data_file(self, local_file_path: str) -> None:
|
||||
# bucket_name = environment.BIO_ACCESS_LOG_BUCKET
|
||||
# # TODO: フォルダを変える
|
||||
# file_key = f'bio/{path.basename(local_file_path)}'
|
||||
# self.s3_client.upload_file(local_file_path, bucket_name, file_key)
|
||||
|
||||
# def generate_download_file_url(self, local_file_path: str, user_id: str, kind: str) -> str:
|
||||
# bucket_name = environment.BIO_ACCESS_LOG_BUCKET
|
||||
# # TODO: フォルダを変える
|
||||
# file_key = f'bio/{path.basename(local_file_path)}'
|
||||
# download_filename = f'{user_id}_生物由来卸販売データ.{kind}'
|
||||
# return self.s3_client.generate_presigned_url(bucket_name, file_key, download_filename)
|
||||
|
||||
@ -46,18 +46,18 @@ table{
|
||||
}
|
||||
|
||||
.scroll_table::-webkit-scrollbar {
|
||||
height: 5px;
|
||||
width: 10px;
|
||||
height: 5px;
|
||||
width: 10px;
|
||||
}
|
||||
|
||||
.scroll_table::-webkit-scrollbar-track {
|
||||
border-radius: 5px;
|
||||
background: #eee;
|
||||
border-radius: 5px;
|
||||
background: #eee;
|
||||
}
|
||||
|
||||
.scroll_table::-webkit-scrollbar-thumb {
|
||||
border-radius: 5px;
|
||||
background: #666;
|
||||
border-radius: 5px;
|
||||
background: #666;
|
||||
}
|
||||
|
||||
.ult_bt {
|
||||
@ -361,7 +361,7 @@ table{
|
||||
}
|
||||
|
||||
.docHeader_bt{
|
||||
width: 40%;s
|
||||
width: 40%;
|
||||
}
|
||||
|
||||
/* アルトマーク課題管理表No.2の修正 8% → 10% */
|
||||
@ -405,18 +405,18 @@ table{
|
||||
}
|
||||
|
||||
.docSearchScroll::-webkit-scrollbar {
|
||||
height: 5px;
|
||||
width: 10px;
|
||||
height: 5px;
|
||||
width: 10px;
|
||||
}
|
||||
|
||||
.docSearchScroll::-webkit-scrollbar-track {
|
||||
border-radius: 5px;
|
||||
background: #eee;
|
||||
border-radius: 5px;
|
||||
background: #eee;
|
||||
}
|
||||
|
||||
.docSearchScroll::-webkit-scrollbar-thumb {
|
||||
border-radius: 5px;
|
||||
background: #666;
|
||||
border-radius: 5px;
|
||||
background: #666;
|
||||
}
|
||||
|
||||
.allOnOffButton{
|
||||
@ -471,18 +471,18 @@ table{
|
||||
}
|
||||
|
||||
.scroll::-webkit-scrollbar {
|
||||
height: 5px;
|
||||
width: 10px;
|
||||
height: 5px;
|
||||
width: 10px;
|
||||
}
|
||||
|
||||
.scroll::-webkit-scrollbar-track {
|
||||
border-radius: 5px;
|
||||
background: #eee;
|
||||
border-radius: 5px;
|
||||
background: #eee;
|
||||
}
|
||||
|
||||
.scroll::-webkit-scrollbar-thumb {
|
||||
border-radius: 5px;
|
||||
background: #666;
|
||||
border-radius: 5px;
|
||||
background: #666;
|
||||
}
|
||||
|
||||
.rightBoderLine{
|
||||
|
||||
@ -1,13 +1,3 @@
|
||||
<?php
|
||||
require_once('/home/nds_dwh/webroot/common/config/ultIniSet.inc');
|
||||
require_once('/home/nds_dwh/webroot/common/function/sessionCheck.php');
|
||||
require_once('/home/nds_dwh/webroot/common/function/timeout.php');
|
||||
require_once('/home/nds_dwh/webroot/common/function/dbcls.php');
|
||||
require_once('/home/nds_dwh/webroot/common/config/path.inc');
|
||||
require_once('/home/nds_dwh/webroot/common/config/message.inc');
|
||||
require_once('/home/nds_dwh/webroot/common/function/getDateBatchJSString.php');
|
||||
?>
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="ja">
|
||||
<head>
|
||||
@ -16,137 +6,17 @@ require_once('/home/nds_dwh/webroot/common/function/getDateBatchJSString.php');
|
||||
{% endwith %}
|
||||
<link rel="stylesheet" href="/static/css/ultStyle.css">
|
||||
|
||||
<!-- <link rel="stylesheet" type="text/css" href="<?php echo $ultCss ?>"> -->
|
||||
<!-- <script type="text/javascript" src="<?php echo $ultJsPath ?>"></script> -->
|
||||
<script type="text/javascript">
|
||||
controlCount = 11; // 検索フォームの入力ボックスの数 アルトマーク課題管理表No.2の修正
|
||||
|
||||
// function DisplayErrorDialog(strMesssage) {
|
||||
// $( "#errorTxt" ).html( strMesssage );
|
||||
// $("#error").dialog("open");
|
||||
// }
|
||||
|
||||
// function CreateDialog() {
|
||||
// $("#error").dialog({
|
||||
// autoOpen: false,
|
||||
// width: 400,
|
||||
// modal: true,
|
||||
// open: function (event, ui) {
|
||||
// $(".ui-dialog-titlebar-close").click(function(){
|
||||
// $("#error").dialog("close");
|
||||
// location.href = '<?php echo $logoutPath ?>';
|
||||
// });
|
||||
// },
|
||||
// buttons: [
|
||||
// {
|
||||
// text: 'OK',
|
||||
// click: function(){
|
||||
// $("#error").dialog("close");
|
||||
// location.href = '<?php echo $logoutPath ?>';
|
||||
// }
|
||||
// }
|
||||
// ]
|
||||
// });
|
||||
// }
|
||||
|
||||
// function imgLoad(){
|
||||
// $(".ConfirmImg").attr("src","/common/css/image/kakunin.png");
|
||||
// $(".ErrorImg").attr("src","/common/css/image/error.png");
|
||||
// }
|
||||
|
||||
window.onload = function(){
|
||||
// 見出し固定初期化
|
||||
FixedMidashi.create();
|
||||
// ボタン、テキストボックス初期化
|
||||
formBtDisabled();
|
||||
|
||||
// メッセージダイアログ初期化
|
||||
// CreateDialog();
|
||||
// imgLoad();
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<!-- <?php
|
||||
|
||||
// 施設検索情報の削除 -->
|
||||
<!-- $_SESSION['instDelFlg'] = true;
|
||||
|
||||
|
||||
if (isset($_POST['docBackBt'])|| isset($_POST['currentPageNum'])) {
|
||||
// 前回の検索結果をそのまま表示
|
||||
}
|
||||
else if (isset($_POST['search_bt'])) {
|
||||
$_SESSION['docTextbox_1'] = htmlspecialchars($_POST['textbox_1'], ENT_QUOTES);
|
||||
$_SESSION['docTextbox_2'] = htmlspecialchars($_POST['textbox_2'], ENT_QUOTES);
|
||||
$_SESSION['docTextbox_3'] = htmlspecialchars($_POST['textbox_3'], ENT_QUOTES);
|
||||
$_SESSION['docTextbox_4'] = htmlspecialchars($_POST['textbox_4'], ENT_QUOTES);
|
||||
$_SESSION['docTextbox_5'] = htmlspecialchars($_POST['textbox_5'], ENT_QUOTES);
|
||||
$_SESSION['docTextbox_6'] = htmlspecialchars($_POST['textbox_6'], ENT_QUOTES);
|
||||
$_SESSION['docTextbox_7'] = htmlspecialchars($_POST['textbox_7'], ENT_QUOTES);
|
||||
$_SESSION['docTextbox_8'] = htmlspecialchars($_POST['textbox_8'], ENT_QUOTES);
|
||||
$_SESSION['docTextbox_9'] = htmlspecialchars($_POST['textbox_9'], ENT_QUOTES);
|
||||
$_SESSION['docTextbox_10'] = htmlspecialchars($_POST['textbox_10'], ENT_QUOTES);
|
||||
$_SESSION['docTextbox_11'] = htmlspecialchars($_POST['textbox_11'], ENT_QUOTES);
|
||||
|
||||
} else if(isset($_POST['docSearchBt'])){
|
||||
$_SESSION['docTextbox_1'] = null;
|
||||
$_SESSION['docTextbox_2'] = null;
|
||||
$_SESSION['docTextbox_3'] = null;
|
||||
$_SESSION['docTextbox_4'] = $_POST['id'];
|
||||
$_SESSION['docTextbox_5'] = null;
|
||||
$_SESSION['docTextbox_6'] = null;
|
||||
$_SESSION['docTextbox_7'] = null;
|
||||
$_SESSION['docTextbox_8'] = null;
|
||||
$_SESSION['docTextbox_9'] = null;
|
||||
$_SESSION['docTextbox_10'] = null;
|
||||
$_SESSION['docTextbox_11'] = null;
|
||||
|
||||
} else{
|
||||
$_SESSION['docTextbox_1'] = null;
|
||||
$_SESSION['docTextbox_2'] = null;
|
||||
$_SESSION['docTextbox_3'] = null;
|
||||
$_SESSION['docTextbox_4'] = null;
|
||||
$_SESSION['docTextbox_5'] = null;
|
||||
$_SESSION['docTextbox_6'] = null;
|
||||
$_SESSION['docTextbox_7'] = null;
|
||||
$_SESSION['docTextbox_8'] = null;
|
||||
$_SESSION['docTextbox_9'] = null;
|
||||
$_SESSION['docTextbox_10'] = null;
|
||||
$_SESSION['docTextbox_11'] = null;
|
||||
} -->
|
||||
|
||||
|
||||
<!-- // どのページを表示させるか -->
|
||||
<!-- if (isset($_POST['currentPageNum'])) {
|
||||
$_SESSION['pageNumber'] = $_POST['currentPageNum'];
|
||||
} elseif (isset($_POST['instSearchBt']) || isset($_POST['docBackBt'])) {
|
||||
// なにもしない
|
||||
} else {
|
||||
$_SESSION['pageNumber'] = 1;
|
||||
}
|
||||
$pageNumber = $_SESSION['pageNumber'];
|
||||
|
||||
// 表示するデータの位置決める
|
||||
$limit = ($pageNumber - 1) * INST_DATA_PER_PAGE;
|
||||
$instDataPerPage = INST_DATA_PER_PAGE; -->
|
||||
|
||||
<!-- // DB接続 -->
|
||||
<!-- $sqlCls = new sqlClass();
|
||||
$isDBSuccess = $sqlCls->dbConnection($dbs, $user, $pass, $docSearchPath, __LINE__);
|
||||
if (!isset($isDBSuccess)) {
|
||||
$isDBSuccess = true; -->
|
||||
|
||||
<!-- // アルトマーク課題管理表No.2の追加 Start
|
||||
$sql = "SELECT DISTINCT COM_INST.PREFC_CD, MST_PREFC.PREFC_NAME FROM COM_INST JOIN MST_PREFC ON COM_INST.PREFC_CD = MST_PREFC.PREFC_CD ORDER BY MST_PREFC.PREFC_CD";
|
||||
$info = array($sql);
|
||||
$prefc = $sqlCls->dbSelect($info, $docSearchPath, __LINE__);
|
||||
if ($prefc == false) {
|
||||
$isDBSuccess = false;
|
||||
}
|
||||
// アルトマーク課題管理表No.2の追加 End
|
||||
}
|
||||
?> -->
|
||||
|
||||
|
||||
<!--検索フォーム-->
|
||||
<body>
|
||||
@ -155,17 +25,9 @@ if (!isset($isDBSuccess)) {
|
||||
<tr>
|
||||
<td class="docHeaderTd"><h1>医師検索一覧</h1></td>
|
||||
<td class="docHeaderTdCenter docHeaderTdCenter">
|
||||
<!-- <?php
|
||||
// バッチ処理中判断
|
||||
if(getDateBatchJSString($dbs, $user, $pass) && $isDBSuccess){
|
||||
?> -->
|
||||
{% if ultmarc.is_batch_processing %}
|
||||
<div class="docButchMsg">日次バッチ処理中のため、データが正しく表示されない可能性があります</div>
|
||||
{% endif %}
|
||||
|
||||
<!-- <?php
|
||||
} -->
|
||||
<!-- ?> -->
|
||||
</td>
|
||||
<td class="docHeaderTd docHeaderTdRight"><button class="docHeader_bt" onclick="backToMenu()">メニューへ</button></td>
|
||||
</tr>
|
||||
@ -179,26 +41,16 @@ if (!isset($isDBSuccess)) {
|
||||
<td class="docSearchTextboxTd">
|
||||
<input class="text docSearchTextbox" style="ime-mode:disabled;" type="text" name="ctrl_dcf_pcf_dr_cd"
|
||||
value="{{ultmarc.is_input_dcf_pcf_dr_cd()}}" maxlength='10' oninput="formBtDisabled()">
|
||||
<!-- <?php if(isset($_SESSION['docTextbox_1'])) {
|
||||
echo $_SESSION['docTextbox_1'];
|
||||
} ?> -->
|
||||
</td>
|
||||
<td class="docSearchColumnTd">氏名(漢字):</td>
|
||||
<td class="docSearchTextboxTd">
|
||||
<input class="text docSearchTextbox" type="text" name="ctrl_dr_name"
|
||||
value="{{ultmarc.is_input_dr_name()}}" oninput="formBtDisabled()">
|
||||
<!-- <?php if(isset($_SESSION["docTextbox_3"])) {
|
||||
echo $_SESSION["docTextbox_2"];
|
||||
} ?> -->
|
||||
</td>
|
||||
<!-- アルトマーク課題管理表No.8の修正 氏名(カナ)→氏名(かな・カナ) -->
|
||||
<td class="docSearchColumnTd">氏名(かな・カナ):</td>
|
||||
<td class="docSearchTextboxTd">
|
||||
<input class="text docSearchTextbox" type="text" name="ctrl_dr_name_kana"
|
||||
value="{{ultmarc.is_input_dr_name_kana()}}" oninput="formBtDisabled()">
|
||||
<!-- <?php if(isset($_SESSION["docTextbox_3"])) {
|
||||
echo $_SESSION["docTextbox_3"];
|
||||
} ?> -->
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -206,35 +58,24 @@ if (!isset($isDBSuccess)) {
|
||||
<td class="docSearchTextboxTd">
|
||||
<input class="text docSearchTextbox" style="ime-mode:disabled;" type="text" name="ctrl_dcf_dsf_inst_cd"
|
||||
value="{{ultmarc.is_input_dcf_dsf_inst_cd()}}" maxlength='11' oninput="formBtDisabled()">
|
||||
<!-- <?php if(isset($_SESSION['docTextbox_4'])) {
|
||||
echo $_SESSION['docTextbox_4'];
|
||||
} ?> -->
|
||||
</td>
|
||||
<td class="docSearchColumnTd">勤務先名(漢字):</td>
|
||||
<td class="docSearchTextboxTd">
|
||||
<input class="text docSearchTextbox" type="text" name="ctrl_form_inst_name_kanji"
|
||||
value="{{ultmarc.is_input_form_inst_name_kanji()}}" oninput="formBtDisabled()">
|
||||
<!-- <?php if(isset($_SESSION["docTextbox_5"])) {
|
||||
echo $_SESSION["docTextbox_5"];
|
||||
} ?> -->
|
||||
</td>
|
||||
<!-- アルトマーク課題管理表No.8の修正 勤務先名(カナ)→勤務先名(かな・カナ) -->
|
||||
<td class="docSearchColumnTd">勤務先名(かな・カナ):</td>
|
||||
<td class="docSearchTextboxTd">
|
||||
<input class="text docSearchTextbox" type="text" name="ctrl_form_inst_name_kana"
|
||||
value="{{ultmarc.is_input_form_inst_name_kana()}}" oninput="formBtDisabled()">
|
||||
<!-- <?php if(isset($_SESSION["docTextbox_6"])) {
|
||||
echo $_SESSION["docTextbox_6"];
|
||||
} ?> -->
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<!-- アルトマーク課題管理表No.2の追加 Start -->
|
||||
<td class="docSearchColumnTd">勤務先都道府県:</td>
|
||||
<td class="search_tb">
|
||||
<!-- 都道府県のドロップダウン -->
|
||||
<select class="text search_dropdown" name="ctrl_prefc_cd" onchange="formBtDisabled()" onkeyup="formBtDisablead()">
|
||||
<!--ToDo 都道府県ドロップダウンの中身を作成(マスタからとってこれる) -->
|
||||
<!-- 都道府県ドロップダウンの中身を作成 -->
|
||||
<option value=""></option>
|
||||
{% for prefc in ultmarc.prefc_models %}
|
||||
<option
|
||||
@ -242,32 +83,17 @@ if (!isset($isDBSuccess)) {
|
||||
{{prefc['prefc_name']}}
|
||||
</option>
|
||||
{% endfor %}
|
||||
<!-- <?php
|
||||
foreach ($prefc as $value){
|
||||
?>
|
||||
<option value="<?php echo $value['PREFC_CD'] ?>" <?php if(isset($_SESSION['docTextbox_11'])) { if($_SESSION['docTextbox_11'] == $value['PREFC_CD']) { echo ' selected'; }}; ?> >
|
||||
<?php echo $value['PREFC_NAME']; ?></option>
|
||||
<?php
|
||||
}
|
||||
?> -->
|
||||
</select>
|
||||
</td>
|
||||
<!-- アルトマーク課題管理表No.2の追加 End -->
|
||||
<td class="docSearchColumnTd">所属部科(漢字):</td>
|
||||
<td class="docSearchTextboxTd">
|
||||
<input class="text docSearchTextbox" type="text" name="ctrl_blng_sec_name"
|
||||
value="{{ultmarc.is_input_blng_sec_name()}}" oninput="formBtDisabled()">
|
||||
<!-- <?php if(isset($_SESSION["docTextbox_7"])) {
|
||||
echo $_SESSION["docTextbox_7"];
|
||||
} ?> -->
|
||||
</td>
|
||||
<td class="docSearchColumnTd">診療科目(漢字):</td>
|
||||
<td class="docSearchTextboxTd">
|
||||
<input class="text docSearchTextbox" type="text" name="ctrl_trt_course_name"
|
||||
value="{{ultmarc.is_input_trt_course_name()}}" oninput="formBtDisabled()">
|
||||
<!-- <?php if(isset($_SESSION["docTextbox_8"])) {
|
||||
echo $_SESSION["docTextbox_8"];
|
||||
} ?> -->
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@ -275,16 +101,10 @@ if (!isset($isDBSuccess)) {
|
||||
<td class="docSearchTextboxTd">
|
||||
<input class="text docSearchTextbox" type="text" name="ctrl_alma"
|
||||
value="{{ultmarc.is_input_alma()}}" oninput="formBtDisabled()">
|
||||
<!-- <?php if(isset($_SESSION["docTextbox_9"])) {
|
||||
echo $_SESSION["docTextbox_9"];
|
||||
} ?> -->
|
||||
</td>
|
||||
<td class="docSearchColumnTd">卒年:</td>
|
||||
<td class="docSearchTextboxTd"><input class="text docSearchTextbox" style="ime-mode:disabled;" type="text" name="ctrl_grad_y"
|
||||
value="" maxlength='4' oninput="formBtDisabled()"></td>
|
||||
<!-- <?php if(isset($_SESSION["docTextbox_10"])) {
|
||||
echo $_SESSION["docTextbox_10"];
|
||||
} ?> -->
|
||||
value="{{ultmarc.is_input_grad_y()}}" maxlength='4' oninput="formBtDisabled()"></td>
|
||||
<td class="search_btTd" colspan="2">
|
||||
<input class="text ult_bt search_bt" id="clear" type="button" name="clear_bt" value="クリア" onclick="clr();">
|
||||
<input class="ult_bt search_bt" id="search_bt" name="search_bt" value="検索" type="submit">
|
||||
@ -293,223 +113,13 @@ if (!isset($isDBSuccess)) {
|
||||
</tbody>
|
||||
</table>
|
||||
</form>
|
||||
<!-- <?php
|
||||
// アルトマーク課題管理表No.2の修正(LEFT JOIN MST_PREFC…の2行追加&SELECT COM_DR.DCF_PCF_DR_CD…の最後の検索項目(MST_PREFC.PREFC_NAME)追加)
|
||||
// アルトマーク課題管理表No.7の修正 旧ソース:$cntSql = "SELECT COUNT(*) AS countNum FROM (((((((COM_DR)
|
||||
if ((isset($_POST['search_bt']) || isset($_POST['currentPageNum']) || isset($_POST['docSearchBt']) || isset($_POST['docBackBt'])) && $isDBSuccess && isset($_SESSION['id'])) {
|
||||
$cntSql = "SELECT COUNT(countNum) AS countNum FROM (SELECT COUNT(*) AS countNum FROM (((((((COM_DR
|
||||
LEFT JOIN MST_PREFC ON COM_DR.PREFC_CD = MST_PREFC.PREFC_CD)
|
||||
LEFT JOIN COM_DR_WRKPLACE ON COM_DR.DCF_PCF_DR_CD = COM_DR_WRKPLACE.DCF_PCF_DR_CD)
|
||||
LEFT JOIN COM_INST ON COM_DR_WRKPLACE.DCF_DSF_INST_CD = COM_INST.DCF_DSF_INST_CD)
|
||||
LEFT JOIN COM_BLNG_SEC ON COM_DR_WRKPLACE.BLNG_SEC_CD = COM_BLNG_SEC.BLNG_SEC_CD)
|
||||
LEFT JOIN COM_DR_TRT_COURSE ON COM_DR.DCF_PCF_DR_CD = COM_DR_TRT_COURSE.DCF_PCF_DR_CD)
|
||||
LEFT JOIN COM_TRT_COURSE ON COM_DR_TRT_COURSE.TRT_COURSE_CD = COM_TRT_COURSE.TRT_COURSE_CD)
|
||||
LEFT JOIN COM_POST ON COM_DR_WRKPLACE.POST_CD = COM_POST.POST_CD)
|
||||
LEFT JOIN COM_ALMA ON COM_DR.ALMA_CD = COM_ALMA.ALMA_CD
|
||||
WHERE ";
|
||||
// アルトマーク課題管理表No.7の修正 旧ソース:SELECT COM_DR.DCF_PCF_DR_CD, COM_DR.DR_NAME, COM_INST.FORM_INST_NAME_KANJI, COM_INST.DCF_DSF_INST_CD, COM_BLNG_SEC.BLNG_SEC_NAME, COM_TRT_COURSE.TRT_COURSE_NAME, COM_POST.FORM_POST_NAME, COM_ALMA.ALMA, COM_DR.GRAD_Y, MST_PREFC.PREFC_NAME
|
||||
$sql = "
|
||||
SELECT COM_DR.DCF_PCF_DR_CD, COM_DR.DR_NAME, COM_INST.FORM_INST_NAME_KANJI, COM_INST.DCF_DSF_INST_CD, COM_BLNG_SEC.BLNG_SEC_NAME, COM_TRT_COURSE.TRT_COURSE_NAME, COM_POST.FORM_POST_NAME, COM_ALMA.ALMA, COM_DR.GRAD_Y, MST_PREFC.PREFC_NAME, COM_DR_WRKPLACE.BLNG_SEC_CD
|
||||
FROM (((((((COM_DR
|
||||
LEFT JOIN MST_PREFC ON COM_DR.PREFC_CD = MST_PREFC.PREFC_CD)
|
||||
LEFT JOIN COM_DR_WRKPLACE ON COM_DR.DCF_PCF_DR_CD = COM_DR_WRKPLACE.DCF_PCF_DR_CD)
|
||||
LEFT JOIN COM_INST ON COM_DR_WRKPLACE.DCF_DSF_INST_CD = COM_INST.DCF_DSF_INST_CD)
|
||||
LEFT JOIN COM_BLNG_SEC ON COM_DR_WRKPLACE.BLNG_SEC_CD = COM_BLNG_SEC.BLNG_SEC_CD)
|
||||
LEFT JOIN COM_DR_TRT_COURSE ON COM_DR.DCF_PCF_DR_CD = COM_DR_TRT_COURSE.DCF_PCF_DR_CD)
|
||||
LEFT JOIN COM_TRT_COURSE ON COM_DR_TRT_COURSE.TRT_COURSE_CD = COM_TRT_COURSE.TRT_COURSE_CD)
|
||||
LEFT JOIN COM_POST ON COM_DR_WRKPLACE.POST_CD = COM_POST.POST_CD)
|
||||
LEFT JOIN COM_ALMA ON COM_DR.ALMA_CD = COM_ALMA.ALMA_CD
|
||||
WHERE ";
|
||||
$notfirstFlg = false;
|
||||
// もし医師コードが入力されていたら
|
||||
if (!empty($_SESSION["docTextbox_1"])) {
|
||||
$cntSql .= "COM_DR.DCF_PCF_DR_CD LIKE :drCd";
|
||||
$sql .= "COM_DR.DCF_PCF_DR_CD LIKE :drCd";
|
||||
$val[":drCd"] = '%' . htmlspecialchars($_SESSION['docTextbox_1'], ENT_QUOTES) . '%';
|
||||
$notfirstFlg = true;
|
||||
}
|
||||
// もし医師名(漢字)が入力されていたら
|
||||
if (!empty($_SESSION["docTextbox_2"])) {
|
||||
if ($notfirstFlg) {
|
||||
$cntSql .= " AND ";
|
||||
$sql .= " AND ";
|
||||
}
|
||||
$cntSql .= "DR_NAME LIKE :drName";
|
||||
$sql .= "DR_NAME LIKE :drName";
|
||||
$val[":drName"] = '%' . htmlspecialchars($_SESSION['docTextbox_2'], ENT_QUOTES) . '%';
|
||||
$notfirstFlg = true;
|
||||
}
|
||||
// もし医師名(カナ)が入力されていたら
|
||||
if (!empty($_SESSION["docTextbox_3"])) {
|
||||
if ($notfirstFlg) {
|
||||
$cntSql .= " AND ";
|
||||
$sql .= " AND ";
|
||||
}
|
||||
$cntSql .= "DR_NAME_KANA LIKE :drNameKana";
|
||||
$sql .= "DR_NAME_KANA LIKE :drNameKana";
|
||||
$val[":drNameKana"] = '%' . htmlspecialchars(mb_convert_kana($_SESSION['docTextbox_3'], "khs", "UTF-8"), ENT_QUOTES) . '%';
|
||||
$notfirstFlg = true;
|
||||
}
|
||||
// もし勤務先コードが入力されていたら
|
||||
if (!empty($_SESSION["docTextbox_4"])) {
|
||||
if ($notfirstFlg) {
|
||||
$cntSql .= " AND ";
|
||||
$sql .= " AND ";
|
||||
}
|
||||
$cntSql .= "COM_INST.DCF_DSF_INST_CD LIKE :instCd";
|
||||
$sql .= "COM_INST.DCF_DSF_INST_CD LIKE :instCd";
|
||||
$val[":instCd"] = '%' . htmlspecialchars($_SESSION['docTextbox_4'], ENT_QUOTES) . '%';
|
||||
$notfirstFlg = true;
|
||||
}
|
||||
// もし勤務先名(漢字)が入力されていたら
|
||||
if (!empty($_SESSION["docTextbox_5"])) {
|
||||
if ($notfirstFlg) {
|
||||
$cntSql .= " AND ";
|
||||
$sql .= " AND ";
|
||||
}
|
||||
$cntSql .= "FORM_INST_NAME_KANJI LIKE :instNameKanji";
|
||||
$sql .= "FORM_INST_NAME_KANJI LIKE :instNameKanji";
|
||||
$val[":instNameKanji"] = '%' . htmlspecialchars($_SESSION['docTextbox_5'], ENT_QUOTES) . '%';
|
||||
$notfirstFlg = true;
|
||||
}
|
||||
// もし勤務先名(カナ)が入力されていたら
|
||||
if (!empty($_SESSION["docTextbox_6"])) {
|
||||
if ($notfirstFlg) {
|
||||
$cntSql .= " AND ";
|
||||
$sql .= " AND ";
|
||||
}
|
||||
$cntSql .= "FORM_INST_NAME_KANA LIKE :instNameKana";
|
||||
$sql .= "FORM_INST_NAME_KANA LIKE :instNameKana";
|
||||
$val[":instNameKana"] = '%' . htmlspecialchars(mb_convert_kana($_SESSION['docTextbox_6'], "khs", "UTF-8"), ENT_QUOTES) . '%';
|
||||
$notfirstFlg = true;
|
||||
}
|
||||
// アルトマーク課題管理表No.2の追加 Start
|
||||
// もし都道府県が入力されていたら
|
||||
if ($_SESSION["docTextbox_11"] != null) {
|
||||
if ($notfirstFlg) {
|
||||
$cntSql .= " AND ";
|
||||
$sql .= " AND ";
|
||||
}
|
||||
$cntSql .= "COM_INST.PREFC_CD = :prefcCd";
|
||||
$sql .= "COM_INST.PREFC_CD = :prefcCd";
|
||||
$val[":prefcCd"] = htmlspecialchars($_SESSION['docTextbox_11'], ENT_QUOTES);
|
||||
$notfirstFlg = true;
|
||||
}
|
||||
// アルトマーク課題管理表No.2の追加 End
|
||||
// もし所属部科(漢字)が入力されていたら
|
||||
if (!empty($_SESSION["docTextbox_7"])) {
|
||||
if ($notfirstFlg) {
|
||||
$cntSql .= " AND ";
|
||||
$sql .= " AND ";
|
||||
}
|
||||
$cntSql .= "COM_BLNG_SEC.BLNG_SEC_NAME LIKE :blngSecName";
|
||||
$sql .= "COM_BLNG_SEC.BLNG_SEC_NAME LIKE :blngSecName";
|
||||
$val[":blngSecName"] = '%' . htmlspecialchars($_SESSION['docTextbox_7'], ENT_QUOTES) . '%';
|
||||
$notfirstFlg = true;
|
||||
}
|
||||
// もし診療科目(漢字)が入力されていたら
|
||||
if (!empty($_SESSION["docTextbox_8"])) {
|
||||
if ($notfirstFlg) {
|
||||
$cntSql .= " AND ";
|
||||
$sql .= " AND ";
|
||||
}
|
||||
$cntSql .= "TRT_COURSE_NAME LIKE :trtCourseName";
|
||||
$sql .= "TRT_COURSE_NAME LIKE :trtCourseName";
|
||||
$val[":trtCourseName"] = '%' . htmlspecialchars($_SESSION['docTextbox_8'], ENT_QUOTES) . '%';
|
||||
$notfirstFlg = true;
|
||||
}
|
||||
// もし出身大学(漢字)が入力されていたら
|
||||
if (!empty($_SESSION["docTextbox_9"])) {
|
||||
if ($notfirstFlg) {
|
||||
$cntSql .= " AND ";
|
||||
$sql .= " AND ";
|
||||
}
|
||||
$cntSql .= "ALMA LIKE :alma";
|
||||
$sql .= "ALMA LIKE :alma";
|
||||
$val[":alma"] = '%' . htmlspecialchars($_SESSION['docTextbox_9'], ENT_QUOTES) . '%';
|
||||
$notfirstFlg = true;
|
||||
}
|
||||
// もし卒年が入力されていたら
|
||||
if (!empty($_SESSION["docTextbox_10"])) {
|
||||
if ($notfirstFlg) {
|
||||
$cntSql .= " AND ";
|
||||
$sql .= " AND ";
|
||||
}
|
||||
$cntSql .= "GRAD_Y LIKE :gradY";
|
||||
$sql .= "GRAD_Y LIKE :gradY";
|
||||
$val[":gradY"] = htmlspecialchars($_SESSION['docTextbox_10'], ENT_QUOTES) . '%';
|
||||
$notfirstFlg = true;
|
||||
}
|
||||
|
||||
// テキストボックスが未入力なら
|
||||
|
||||
// アルトマーク課題管理表No.7の修正
|
||||
//if (!(empty($_SESSION["docTextbox_1"]) AND empty($_SESSION["docTextbox_2"]) AND empty($_SESSION["docTextbox_3"]) AND empty($_SESSION["docTextbox_4"]) AND empty($_SESSION["docTextbox_5"]) AND empty($_SESSION["docTextbox_6"]) AND empty($_SESSION["docTextbox_7"]) AND empty($_SESSION["docTextbox_8"]) AND empty($_SESSION["docTextbox_9"]) AND empty($_SESSION["docTextbox_10"]))) {
|
||||
if (!(empty($_SESSION["docTextbox_1"]) AND empty($_SESSION["docTextbox_2"]) AND empty($_SESSION["docTextbox_3"]) AND empty($_SESSION["docTextbox_4"]) AND empty($_SESSION["docTextbox_5"]) AND empty($_SESSION["docTextbox_6"]) AND empty($_SESSION["docTextbox_7"]) AND empty($_SESSION["docTextbox_8"]) AND empty($_SESSION["docTextbox_9"]) AND empty($_SESSION["docTextbox_10"]) AND empty($_SESSION["docTextbox_11"]))) {
|
||||
$sql .=" AND (LENGTH(COM_INST.ABOLISH_YMD) = 0 OR COM_INST.ABOLISH_YMD IS NULL)
|
||||
AND (LENGTH(COM_DR.ABOLISH_YMD) = 0 OR COM_DR.ABOLISH_YMD IS NULL)";
|
||||
|
||||
$cntSql .=" AND (LENGTH(COM_INST.ABOLISH_YMD) = 0 OR COM_INST.ABOLISH_YMD IS NULL)
|
||||
AND (LENGTH(COM_DR.ABOLISH_YMD) = 0 OR COM_DR.ABOLISH_YMD IS NULL)
|
||||
GROUP BY COM_DR.DCF_PCF_DR_CD, COM_INST.DCF_DSF_INST_CD) AS A;"; // アルトマーク課題管理表No.7の修正 GROUP BY ~の1行追加
|
||||
|
||||
// ソートの基準設定
|
||||
// アルトマーク課題管理表No.7の修正
|
||||
//$sql .= " ORDER BY COM_DR.DCF_PCF_DR_CD";
|
||||
$sql .= " ORDER BY COM_DR.DCF_PCF_DR_CD, COM_DR_WRKPLACE.DCF_DSF_INST_CD, COM_DR_WRKPLACE.BLNG_SEC_CD,COM_DR_TRT_COURSE.TRT_COURSE_CD";
|
||||
// アルトマーク課題管理表No.7の修正
|
||||
//$sql .=" LIMIT {$limit} , {$instDataPerPage};";
|
||||
} else {
|
||||
$sql .= ";";
|
||||
$cntSql .= ";";
|
||||
}
|
||||
|
||||
// 取得件数を計算
|
||||
$info = array($cntSql, $val);
|
||||
$dtCnt = $sqlCls->dbCount($info, $docSearchPath, __LINE__);
|
||||
if ($dtCnt == false) {
|
||||
$isDBSuccess = false;
|
||||
}
|
||||
|
||||
// 件数が500以上かどうか
|
||||
if ($dtCnt['countNum'] > 500) {
|
||||
$resultMaxFlg = true;
|
||||
$dtCnt['countNum'] = 0;
|
||||
$selectDt = array();
|
||||
} else {
|
||||
$resultMaxFlg = false;
|
||||
// データを取得
|
||||
$info = array($sql, $val);
|
||||
$selectDt = $sqlCls->dbSelect($info, $docSearchPath, __LINE__);
|
||||
if ($selectDt == false) {
|
||||
$isDBSuccess = false;
|
||||
}
|
||||
}
|
||||
} else{
|
||||
$resultMaxFlg = false;
|
||||
$dtCnt['countNum'] = 0;
|
||||
$selectDt = array();
|
||||
}
|
||||
|
||||
if (!$isDBSuccess) {
|
||||
$selectDt = array();
|
||||
$dtCnt['countNum'] = 0;
|
||||
}
|
||||
|
||||
|
||||
$sqlCls->dbExit();
|
||||
// ページ数の計算
|
||||
$pageCount = ceil( $dtCnt['countNum'] / INST_DATA_PER_PAGE );
|
||||
|
||||
?> -->
|
||||
|
||||
<!--検索結果-->
|
||||
<form class="_form" name="result" action="/ultmarc/docSearch" method="POST">
|
||||
<input type="button" name="allon" onclick="allOn()" value="全選択" class="ult_bt allOnOffButton" />
|
||||
<!-- <?php if ($dtCnt['countNum'] <= 0){ echo "disabled"; } ?> -->
|
||||
<input type="button" name="alloff" onclick="allOff()" value="全解除" class="ult_bt allOnOffButton" />
|
||||
<!-- <?php if ($dtCnt['countNum'] <= 0){ echo "disabled"; } ?> -->
|
||||
|
||||
<!--検索件数-->
|
||||
<!-- <div class="result_info">件数:<?php echo $dtCnt['countNum']; ?>件 ページ数:<?php echo "$pageCount"; ?><br></div> -->
|
||||
<!--ページネーション-->
|
||||
<div id="light-pagination" class="pagination"></div>
|
||||
<!--検索結果表示テーブル-->
|
||||
@ -528,152 +138,15 @@ if (!isset($isDBSuccess)) {
|
||||
<th>卒年</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<!-- <?php
|
||||
if (isset($_POST['search_bt']) || isset($_POST['currentPageNum']) || isset($_POST['docSearchBt']) || isset($_POST['docBackBt'])) {
|
||||
?> -->
|
||||
<tbody id="result_data" class="result_data"></tbody>
|
||||
<!-- <tbody>
|
||||
<?php
|
||||
// アルトマーク課題管理表No.7の修正 Start
|
||||
// 同じ所属部課で複数の診療科目を担当する医師情報をマージする
|
||||
$selectDtMerge = array();
|
||||
$beforeDrCd = "";
|
||||
$beforeInstCd = "";
|
||||
$beforeSecCd = "";
|
||||
$limitCount = 0;
|
||||
$pageLastProcEndFlag = false; -->
|
||||
|
||||
<!-- foreach ($selectDt as $value) {
|
||||
<tbody id="result_data" class="result_data"></tbody>
|
||||
|
||||
// 該当ページ内のデータであるかの判定 -->
|
||||
<!-- if ($limit > $limitCount || $limitCount >= $limit + $instDataPerPage) {
|
||||
|
||||
if ($beforeDrCd != $value['DCF_PCF_DR_CD'] || $beforeInstCd != $value['DCF_DSF_INST_CD'] || $beforeSecCd != $value['BLNG_SEC_CD']) {
|
||||
$beforeDrCd = $value['DCF_PCF_DR_CD'];
|
||||
$beforeInstCd = $value['DCF_DSF_INST_CD'];
|
||||
$beforeSecCd = $value['BLNG_SEC_CD'];
|
||||
$limitCount++;
|
||||
}
|
||||
|
||||
// 該当ページ内のデータでない場合一覧表示対象ではないのでスキップ
|
||||
continue;
|
||||
} -->
|
||||
|
||||
<!-- // 同じ医師情報の場合 -->
|
||||
<!-- if ($beforeDrCd === $value['DCF_PCF_DR_CD'] && $beforeInstCd === $value['DCF_DSF_INST_CD'] && $beforeSecCd === $value['BLNG_SEC_CD']) {
|
||||
// 医師情報が設定されていない場合、前のページの最後の医師データなのでスキップ
|
||||
if (count($selectDtMerge) == 0) {
|
||||
$limitCount++;
|
||||
continue;
|
||||
}
|
||||
|
||||
// 診療科目以外同じ情報という前提で、診療科目だけをマージ(・で区切って追加)
|
||||
※ SQLで取りましょう
|
||||
$selectDtMerge[count($selectDtMerge) - 1]['TRT_COURSE_NAME'] .= $delimiterTrtCourceName . $value['TRT_COURSE_NAME'];
|
||||
} -->
|
||||
<!-- // 異なる医師情報の場合
|
||||
else {
|
||||
// 該当ページ内の最後のデータで、同じ医師情報がない場合、該当ページの処理は終わり
|
||||
if ($pageLastProcEndFlag) {
|
||||
$limitCount++;
|
||||
$pageLastProcEndFlag = false;
|
||||
continue;
|
||||
}
|
||||
|
||||
// 医師情報を追加
|
||||
$selectDtMerge[] = $value;
|
||||
$beforeDrCd = $value['DCF_PCF_DR_CD'];
|
||||
$beforeInstCd = $value['DCF_DSF_INST_CD'];
|
||||
$beforeSecCd = $value['BLNG_SEC_CD'];
|
||||
|
||||
// 該当ページ内の最後のデータの場合、同じ医師情報がある可能性があるので次のデータを検索する為にカウントアップしない
|
||||
if ($limitCount === $limit + $instDataPerPage - 1) {
|
||||
$pageLastProcEndFlag = true;
|
||||
}
|
||||
else {
|
||||
$limitCount++;
|
||||
}
|
||||
|
||||
}
|
||||
} -->
|
||||
<!-- // アルトマーク課題管理表No.7の修正 End
|
||||
|
||||
$i = 0; // チェックボックスの名前つけに利用
|
||||
// アルトマーク課題管理表No.7の修正
|
||||
//foreach ($selectDt as $value) {
|
||||
foreach ($selectDtMerge as $value) {
|
||||
$i++;
|
||||
?>
|
||||
<tr>
|
||||
<td><div class="checkNum"><input type="checkbox" class="checkbox selected" name="data<?php echo $i ?>" onclick="resultBtDisablead()" value="<?php echo $value['DCF_PCF_DR_CD'] ?>"></div></td>
|
||||
<td><a href="<?php echo $docInfoPath . "/?id=" . $value['DCF_PCF_DR_CD'] ?>"><?php echo $value['DCF_PCF_DR_CD'] ?></a></td>
|
||||
<td><?php echo $value['DR_NAME'] ?></td>
|
||||
<td><a href="<?php echo $instInfoPath . "/?id=" . $value['DCF_DSF_INST_CD'] ?>"><?php echo $value['FORM_INST_NAME_KANJI'] ?></a></td>
|
||||
<td><?php echo $value['BLNG_SEC_NAME'] ?></td>
|
||||
<td><?php echo $value['TRT_COURSE_NAME'] ?></td>
|
||||
<td><?php echo $value['FORM_POST_NAME'] ?></td>
|
||||
<td><?php echo $value['ALMA'] ?></td>
|
||||
<td><?php echo $value['GRAD_Y'] ?></td>
|
||||
</tr>
|
||||
<?php
|
||||
}
|
||||
?> -->
|
||||
<!-- </tbody>
|
||||
<?php
|
||||
}
|
||||
?> -->
|
||||
</table>
|
||||
|
||||
<!--
|
||||
|
||||
※ ここに埋めよう
|
||||
<?php
|
||||
if ($resultMaxFlg && $isDBSuccess) {
|
||||
?>
|
||||
<div class="notFind"><?php echo $resultMaxMsg ?></div>
|
||||
<?php
|
||||
} else if (isset($_POST['search_bt']) && $dtCnt['countNum'] <= 0 && $isDBSuccess){
|
||||
?>
|
||||
<div class="notFind"><?php echo $notFindMsg ?></div>
|
||||
<?php
|
||||
} ?> -->
|
||||
</div>
|
||||
<!--操作ボタン-->
|
||||
<input class="send ult_bt info_bt" type="submit" name="detail" value="医師情報">
|
||||
</form>
|
||||
|
||||
<!-- ダイアログ -->
|
||||
<!-- <div id="error" title="エラー">
|
||||
<div style="float: left;width: 15%"><img class="ErrorImg" style="width: 50px;" src="/common/css/image/error.png"></div>
|
||||
<div id="errorTxt" style="float: right; white-space: normal; width: 300px;"></div>
|
||||
</div> -->
|
||||
<!-- <?php
|
||||
// DBエラーしていないか
|
||||
if(!$isDBSuccess){
|
||||
print "<script language=javascript>CreateDialog();</script>";
|
||||
print "<script language=javascript>DisplayErrorDialog('$dbErrMsg');</script>";
|
||||
}
|
||||
?> -->
|
||||
|
||||
<!-- DB接続失敗エラーモーダル -->
|
||||
<!-- {% with
|
||||
modal_id='ErrorModal_DB',
|
||||
modal_title='エラー',
|
||||
message='DB接続に失敗しました。管理者にお問い合わせください。',
|
||||
icon_key='warning',
|
||||
modal_close_event='location.href="/logout?reason="',
|
||||
buttons = [
|
||||
{
|
||||
'id': 'error_modal_db',
|
||||
'class': 'btn btn-primary',
|
||||
'text': 'OK',
|
||||
'onclick_event': 'location.href="/logout?reason=''"'
|
||||
}
|
||||
]
|
||||
%}
|
||||
{% include '_modal.html' %}
|
||||
{% endwith %} -->
|
||||
|
||||
<script type="text/javascript">
|
||||
// <! --ページネーションの作成-- >
|
||||
$(function() {
|
||||
@ -686,7 +159,6 @@ if (!isset($isDBSuccess)) {
|
||||
return
|
||||
}
|
||||
$(".pagination").pagination({
|
||||
// 以下はテスト用コード
|
||||
dataSource: function(done) {
|
||||
done(searchResultData)
|
||||
},
|
||||
@ -708,26 +180,34 @@ if (!isset($isDBSuccess)) {
|
||||
const display_keys = [
|
||||
'dcf_pcf_dr_cd',
|
||||
'dr_name',
|
||||
'form_inst_name_kanji',
|
||||
'dcf_dsf_inst_cd',
|
||||
'blng_sec_name',
|
||||
'trt_course_name',
|
||||
'form_post_name',
|
||||
'alma',
|
||||
'grad_y',
|
||||
'prefc_name',
|
||||
'blng_sec_cd'
|
||||
'grad_y'
|
||||
];
|
||||
const tableRow = document.createElement('tr')
|
||||
return datas.map(function (data) {
|
||||
return `
|
||||
<tr class="result_data">
|
||||
${display_keys.map((key) =>`<td>${data[key] || ''}</td>`)}
|
||||
</tr>
|
||||
`
|
||||
})
|
||||
return tableRow
|
||||
}
|
||||
return datas.map(function (data, index) {
|
||||
let td = display_keys.map((key) =>{
|
||||
let inner_content = data[key];
|
||||
if(key=='dcf_pcf_dr_cd')
|
||||
inner_content = `<a href="/ultmarc/docInfo?id=${data['dcf_pcf_dr_cd']}">${data['dcf_pcf_dr_cd'] || ''}</a>`;
|
||||
if(key=='dcf_dsf_inst_cd')
|
||||
inner_content = `<a href="/ultmarc/instInfo?id=${data['dcf_dsf_inst_cd']}">${data['form_inst_name_kanji'] || ''}</a>`;
|
||||
return `<td>${inner_content || ''}</td>`
|
||||
});
|
||||
return `
|
||||
<tr class="result_data">
|
||||
<td><div class="checkNum">
|
||||
<input type="checkbox" class="checkbox selected" name="data${index+1}" onclick="resultBtDisablead()"
|
||||
value=${data['dcf_pcf_dr_cd']}>
|
||||
</div></td>
|
||||
${td}
|
||||
</tr>
|
||||
`
|
||||
|
||||
})
|
||||
}
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
Loading…
x
Reference in New Issue
Block a user