Compare commits

..

2 Commits

Author SHA1 Message Date
f6857ae959 링크이동 수정
Reviewed-on: http://192.168.10.243:3000/owrainfo/confirms/pulls/56
2026-02-09 11:00:52 +09:00
yangsh
a7dca8c5fa 링크이동 수정
Some checks failed
Close Pull Request / main (pull_request_target) Has been cancelled
2026-02-09 11:00:15 +09:00
7 changed files with 132 additions and 17 deletions

View File

@@ -23,18 +23,31 @@ class Receipt extends BaseController
public function lists(): string public function lists(): string
{ {
$usr_id = $this->request->getGet('usr_id') ?: '';
$sBonbu = $this->request->getGet('bonbu') ?: '';
$sTeanm = $this->request->getGet('dept_sq') ?: '';
$codes = $this->codeModel->getCodeLists(['NHN_DEAL_TYPE', 'CP_ID', 'ARTICLE_TYPE', 'VRFCREQ_WAY', 'STEP_VERIFICATION']); // 코드조회 $codes = $this->codeModel->getCodeLists(['NHN_DEAL_TYPE', 'CP_ID', 'ARTICLE_TYPE', 'VRFCREQ_WAY', 'STEP_VERIFICATION']); // 코드조회
$sido = $this->model->getAreaList(); // 지역조회 $sido = $this->model->getAreaList(); // 지역조회
$bonbu = $this->model->getBonbuList(); $bonbu = $this->model->getBonbuList();
$team = $this->model->getTeamList(); $team = $this->model->getTeamList();
$user = $this->model->getUserList(); $user = $this->model->getUserList();
$this->data['sido'] = $sido; $this->data['sido'] = $sido;
$this->data['bonbu'] = $bonbu; $this->data['bonbu'] = $bonbu;
$this->data['team'] = $team; $this->data['team'] = $team;
$this->data['user'] = $user; $this->data['user'] = $user;
$this->data['codes'] = $codes; $this->data['codes'] = $codes;
if (!empty($usr_id)) {
$srchUser = $this->model->getSrchUserInfo($usr_id);
$this->data['srchUser'] = $srchUser;
}
$this->data['sBonbu'] = $sBonbu;
$this->data['sTeanm'] = $sTeanm;
return view("pages/article/receipt/lists", $this->data); return view("pages/article/receipt/lists", $this->data);
} }

View File

@@ -116,6 +116,19 @@ class ReceiptModel extends Model
return $query->getResultArray(); return $query->getResultArray();
} }
public function getSrchUserInfo($usr_id)
{
$sql = "SELECT a.usr_sq, a.usr_id, b.dept_sq, b.pdept_sq FROM users a
JOIN departments b ON b.dept_sq = a.dept_sq
WHERE a.usr_id = ? AND a.use_yn = 'Y'";
$data = [$usr_id];
$query = $this->db->query($sql, $data);
$row = $query->getRowArray();
return $row;
}
/** /**
* 부서검색(상세) * 부서검색(상세)
*/ */

View File

@@ -39,7 +39,7 @@
$serverIp = $_SERVER['SERVER_ADDR'] ?? ''; $serverIp = $_SERVER['SERVER_ADDR'] ?? '';
// 개발 서버 // 개발 서버
$devServers = ['192.168.200.8', '192.168.10.231']; $devServers = ['192.168.200.8', '192.168.10.231', '172.18.0.5'];
// 도커 테스트 서버 // 도커 테스트 서버
$dockerServers = ['172.18.0.2']; $dockerServers = ['172.18.0.2'];
@@ -58,7 +58,7 @@
if (in_array($serverIp, $devServers, true)) { if (in_array($serverIp, $devServers, true)) {
// 개발 // 개발
echo "<img src='/img/gnb_dev_00.png' alt='' />"; echo "개발";
} elseif (in_array($serverIp, $dockerServers, true)) { } elseif (in_array($serverIp, $dockerServers, true)) {
// 도커 // 도커
@@ -80,8 +80,6 @@
echo "{$serverName}"; echo "{$serverName}";
} }
?> ?>
</li> </li>

View File

@@ -109,7 +109,6 @@ $usr_nm = session('usr_nm');
<div class="main-card mb-3 card"> <div class="main-card mb-3 card">
<div class="card-body"> <div class="card-body">
<form id="frm_srch_info" method="get" onsubmit="return false;"> <form id="frm_srch_info" method="get" onsubmit="return false;">
<!-- 검색 폼 --> <!-- 검색 폼 -->
<div class="row g-3"> <div class="row g-3">
<div class="col-md-1"> <div class="col-md-1">
@@ -404,6 +403,13 @@ $usr_nm = session('usr_nm');
const bonbuArr = <?= json_encode($bonbu, JSON_UNESCAPED_UNICODE); ?>; const bonbuArr = <?= json_encode($bonbu, JSON_UNESCAPED_UNICODE); ?>;
const teamArr = <?= json_encode($team, JSON_UNESCAPED_UNICODE); ?>; const teamArr = <?= json_encode($team, JSON_UNESCAPED_UNICODE); ?>;
const userArr = <?= json_encode($user, JSON_UNESCAPED_UNICODE); ?>; const userArr = <?= json_encode($user, JSON_UNESCAPED_UNICODE); ?>;
<?php if (isset($srchUser) && !empty($srchUser)): ?>
const srchUser = <?= json_encode($srchUser, JSON_UNESCAPED_UNICODE); ?>;
<?php else: ?>
const srchUser = null;
<?php endif; ?>
const sBonbu = "<?= $sBonbu ?? '' ?>";
const sTeam = "<?= $sTeanm ?? '' ?>";
const date = new Date(); const date = new Date();
var table; var table;
@@ -412,6 +418,15 @@ $usr_nm = session('usr_nm');
initReceiptDate(); initReceiptDate();
// srchUser 데이터가 있으면 초기값 설정 (usr_id 파라미터)
if (srchUser) {
initSrchUser();
}
// bonbu, dept_sq 파라미터가 있으면 초기값 설정
else if (sBonbu || sTeam) {
initSrchParam();
}
$("#srcSido, #srcGugun, #srcSido2, #srcGugun2").on("change", function (e) { $("#srcSido, #srcGugun, #srcSido2, #srcGugun2").on("change", function (e) {
const targetId = this.id; const targetId = this.id;
@@ -640,7 +655,7 @@ $usr_nm = session('usr_nm');
{ data: null, render: fn_prd_render }, { data: null, render: fn_prd_render },
{ data: 'rcpt_product_info1' }, { data: 'rcpt_product_info1' },
<?php if ($usr_level != "45"): ?> <?php if ($usr_level != "45"): ?>
{ data: 'dept_nm' }, { data: 'dept_nm' },
{ data: 'usr_nm' }, { data: 'usr_nm' },
<?php endif; ?> <?php endif; ?>
{ data: 'parcel_out_yn' }, { data: 'parcel_out_yn' },
@@ -710,6 +725,79 @@ $usr_nm = session('usr_nm');
} }
// 검색 사용자 초기화 (usr_id 파라미터용)
function initSrchUser() {
if (!srchUser) return;
const pdept_sq = srchUser.pdept_sq;
const dept_sq = srchUser.dept_sq;
const usr_id = srchUser.usr_id;
// 1단계: 본부 선택
if (pdept_sq) {
$("#bonbu").val(pdept_sq);
// 2단계: 팀 목록 로드 및 선택
let teamStr = `<option value="">-팀-</option>`;
if (teamArr.length > 0) {
for (let i = 0; i < teamArr.length; i++) {
if (String(teamArr[i].pdept_sq) === String(pdept_sq)) {
const selected = String(teamArr[i].dept_sq) === String(dept_sq) ? 'selected' : '';
teamStr += `<option value="${teamArr[i].dept_sq}" ${selected}>${teamArr[i].dept_nm}</option>`;
}
}
}
$("#team").html(teamStr);
// 3단계: 담당자 목록 로드 및 선택
if (dept_sq) {
let damdangStr = `<option value="">-담당자-</option>`;
if (userArr.length > 0) {
for (let i = 0; i < userArr.length; i++) {
if (String(userArr[i].dept_sq) === String(dept_sq)) {
const selected = String(userArr[i].usr_id) === String(usr_id) ? 'selected' : '';
damdangStr += `<option value="${userArr[i].usr_id}" ${selected}>${userArr[i].usr_nm}</option>`;
}
}
}
$("#damdang").html(damdangStr);
}
}
}
// 검색 파라미터 초기화 (bonbu, dept_sq 파라미터용)
function initSrchParam() {
// 1단계: 본부 선택
if (sBonbu) {
$("#bonbu").val(sBonbu);
// 2단계: 팀 목록 로드 및 선택
let teamStr = `<option value="">-팀-</option>`;
if (teamArr.length > 0) {
for (let i = 0; i < teamArr.length; i++) {
if (String(teamArr[i].pdept_sq) === String(sBonbu)) {
const selected = String(teamArr[i].dept_sq) === String(sTeam) ? 'selected' : '';
teamStr += `<option value="${teamArr[i].dept_sq}" ${selected}>${teamArr[i].dept_nm}</option>`;
}
}
}
$("#team").html(teamStr);
// 3단계: 팀이 선택되어 있으면 담당자 목록 로드
if (sTeam) {
let damdangStr = `<option value="">-담당자-</option>`;
if (userArr.length > 0) {
for (let i = 0; i < userArr.length; i++) {
if (String(userArr[i].dept_sq) === String(sTeam)) {
damdangStr += `<option value="${userArr[i].usr_id}">${userArr[i].usr_nm}</option>`;
}
}
}
$("#damdang").html(damdangStr);
}
}
}
function atcl_no_enter(event) { function atcl_no_enter(event) {
if (event.keyCode == 13) { if (event.keyCode == 13) {
table.ajax.reload() table.ajax.reload()

View File

@@ -337,7 +337,9 @@
const row = table.row(this).data() const row = table.row(this).data()
if (!row) return if (!row) return
location.href = '/article/receipt/lists';
location.href = '/article/receipt/lists?usr_id=' + row.usr_id;
}); });
// [검색] 버튼 눌렀을 때 다시 조회 // [검색] 버튼 눌렀을 때 다시 조회

View File

@@ -144,13 +144,14 @@
$nRow = 1; $nRow = 1;
foreach ($st_list as $row) { foreach ($st_list as $row) {
// if ($row['depth'] == '1') { $pars = [];
// $rowPars = array_merge($pars, array('bonbu' => $row['dept_sq'])); if ($row['depth'] == '1') {
// } else { $rowPars = array_merge($pars, array('bonbu' => $row['dept_sq']));
// $rowPars = array_merge($pars, array('bonbu' => $row['pdept_sq'], 'dept_sq' => $row['dept_sq'])); } else {
// } $rowPars = array_merge($pars, array('bonbu' => $row['pdept_sq'], 'dept_sq' => $row['dept_sq']));
}
echo '<tr onmouseover="this.className=\'highlight\'" onmouseout="this.className=\'normal\'" style="cursor:pointer" onclick="tr_onclick();">';
echo '<tr onmouseover="this.className=\'highlight\'" onmouseout="this.className=\'normal\'" style="cursor:pointer" onclick="tr_onclick(\'' . make_query_string($rowPars) . '\');">';
echo '<td>' . $nRow . '</td>'; echo '<td>' . $nRow . '</td>';
echo '<td style="text-align:left">' . str_replace(' ', '&nbsp;', $row['dept_nm']) . '</td>'; echo '<td style="text-align:left">' . str_replace(' ', '&nbsp;', $row['dept_nm']) . '</td>';
echo '<td>' . $row['region_cnt'] . '</td>'; echo '<td>' . $row['region_cnt'] . '</td>';
@@ -231,8 +232,8 @@
}); });
function tr_onclick() { function tr_onclick(pars) {
location.href = '/article/receipt/lists'; location.href = '/article/receipt/lists' + pars;
} }
// 엑셀 다운로드 // 엑셀 다운로드

View File

@@ -326,7 +326,7 @@
// myModal.show(); // myModal.show();
location.href = '/article/receipt/lists'; location.href = '/article/receipt/lists?usr_id=' + row.usr_id;
}); });