시스템관리 페이지 추가

This commit is contained in:
yangsh
2025-12-11 16:48:03 +09:00
parent 533d6b5d6b
commit 7324d2d9ba
38 changed files with 5291 additions and 188 deletions

View File

@@ -17,13 +17,41 @@ class PhoneModel extends Model
public function getTotalCount($data)
{
$params = [];
$sql = "SELECT
COUNT(*) AS cnt
FROM
dupl_phone_list AS a
LEFT JOIN codes AS b ON a.cpid = b.cd AND b.category = 'CP_ID' ";
$query = $this->db->query($sql);
$sql .= "WHERE 1=1 ";
if (!empty($data['cpid'])) {
$sql .= "AND a.cpid = ?";
array_push($params, $data['cpid']);
}
if (!empty($data['s_date'])) {
$sql .= "AND a.s_date >= DATE(?) ";
array_push($params, $data['s_date']);
}
if (!empty($data['e_date'])) {
$sql .= "AND a.e_date <= DATE(?) ";
array_push($params, $data['e_date']);
}
if (!empty($data['phone'])) {
$sql .= "AND REPLACE(a.phone_number, '-', '') LIKE CONCAT('%', REPLACE(?, '-', ''), '%') ";
array_push($params, $data['phone']);
}
if (!empty($data['useYn'])) {
$sql .= "AND a.use_yn = ? ";
array_push($params, $data['useYn']);
}
$query = $this->db->query($sql, $params ?: []);
return $query->getRow()->cnt;
}
@@ -40,6 +68,34 @@ class PhoneModel extends Model
dupl_phone_list AS a
LEFT JOIN codes AS b ON a.cpid = b.cd AND b.category = 'CP_ID' ";
$sql .= "WHERE 1=1 ";
if (!empty($data['cpid'])) {
$sql .= "AND a.cpid = ?";
array_push($params, $data['cpid']);
}
if (!empty($data['s_date'])) {
$sql .= "AND a.s_date >= DATE(?) ";
array_push($params, $data['s_date']);
}
if (!empty($data['e_date'])) {
$sql .= "AND a.e_date <= DATE(?) ";
array_push($params, $data['e_date']);
}
if (!empty($data['phone'])) {
$sql .= "AND REPLACE(a.phone_number, '-', '') LIKE CONCAT('%', REPLACE(?, '-', ''), '%') ";
array_push($params, $data['phone']);
}
if (!empty($data['useYn'])) {
$sql .= "AND a.use_yn = ? ";
array_push($params, $data['useYn']);
}
$sql .= "ORDER BY a.use_yn ASC, a.s_date DESC ";
$sql .= " LIMIT ?, ?";
@@ -76,4 +132,93 @@ class PhoneModel extends Model
'success' => true,
];
}
public function updateDuplPhone($data)
{
$sql = " UPDATE dupl_phone_list" .
" SET phone_number = ? " .
" , use_yn = ? " .
" , s_date = ? " .
" , e_date = ? " .
" , address = ? " .
" , owner = ? " .
" , applicant = ? " .
" , relation = ? " .
" , cpid = ? " .
" , memo = ? " .
" , insert_tm = SYSDATE() " .
" , insert_user_id = ? " .
" WHERE phone_number = ?";
$this->db->query($sql, $data);
if ($this->db->transStatus() === false) {
return [
'success' => false,
'msg' => '저장실패',
];
}
// 성공
return [
'success' => true,
];
}
// 엑셀다운로드
function getExcelPhoneList($data)
{
$params = [];
$sql = "SELECT
a.phone_number AS '연락처'
, a.s_date AS '등록일'
, a.e_date AS '만료일'
, b.cd_nm AS '매체사'
, a.address AS '주소'
, a.owner AS '소유자'
, a.applicant AS '신청인'
, a.relation AS '관계'
, (CASE a.use_yn WHEN 'Y' THEN '사용' WHEN 'N' THEN '미사용' END) AS '사용유무'
, a.memo AS '메모'
FROM
dupl_phone_list AS a
LEFT JOIN codes AS b ON a.cpid = b.cd AND b.category = 'CP_ID' ";
$sql .= "WHERE 1=1 ";
if (!empty($data['cpid'])) {
$sql .= "AND a.cpid = ?";
array_push($params, $data['cpid']);
}
if (!empty($data['s_date'])) {
$sql .= "AND a.s_date >= DATE(?) ";
array_push($params, $data['s_date']);
}
if (!empty($data['e_date'])) {
$sql .= "AND a.e_date <= DATE(?) ";
array_push($params, $data['e_date']);
}
if (!empty($data['phone'])) {
$sql .= "AND REPLACE(a.phone_number, '-', '') LIKE CONCAT('%', REPLACE(?, '-', ''), '%') ";
array_push($params, $data['phone']);
}
if (!empty($data['useYn'])) {
$sql .= "AND a.use_yn = ? ";
array_push($params, $data['useYn']);
}
$sql .= "ORDER BY a.use_yn ASC, a.s_date DESC ";
$query = $this->db->query($sql, $params ?: []);
return $query->getResultArray();
}
}