상세수정 #50

Merged
owrainfo merged 1 commits from feature/template into master 2026-02-04 17:54:06 +09:00
8 changed files with 1406 additions and 472 deletions
Showing only changes of commit 8b77448128 - Show all commits

View File

@@ -278,7 +278,8 @@ $routes->group('', ['namespace' => 'App\Controllers\V2'], static function ($rout
$routes->post('m705a/uploadFile', 'M705::uploadFile'); // 파일업로드
$routes->post('m705a/getNextInfo', 'M705::getNextInfo'); // 다음매물확인
$routes->post('m705a/nextRegi', 'M705::saveRegi'); // 매물저장
$routes->post('m705a/saveRegi', 'M705::saveRegi'); // 매물저장
$routes->post('m705a/getNextInfo', 'M705::getNextInfo'); // 다음매물
});

View File

@@ -4,8 +4,11 @@ namespace App\Controllers\V2;
use App\Controllers\BaseController;
use App\Libraries\Common;
use App\Libraries\MyUpload;
use App\Libraries\NaverApiClient;
use App\Models\common\CodeModel;
use App\Models\results\M415Model;
use App\Models\v2\M705Model;
use App\Models\v2\M710Model;
class M705 extends BaseController
{
@@ -55,7 +58,7 @@ class M705 extends BaseController
'srcDong' => $this->request->getGet('srcDong'), // 읍면동
'bonbu' => $this->request->getGet('bonbu'), // 본부
'team' => $this->request->getGet('team'), // 팀
'damdang' => $this->request->getGet('damdang'), // 담당
'damdang' => $this->request->guploadFileetGet('damdang'), // 담당
'vrfcreq_way' => $this->request->getGet('vrfcreq_way'), // 검증방식1
'vrfc_type_sub' => $this->request->getGet('vrfc_type_sub'), // 검증방식2
'rcpt_cpid' => $this->request->getGet('rcpt_cpid'), // 매체사
@@ -150,6 +153,7 @@ class M705 extends BaseController
// 상세화면
public function detail($id)
{
$naver = new NaverApiClient();
$id = (string) $id;
if ($id === '') {
@@ -165,6 +169,24 @@ class M705 extends BaseController
$display = $this->model->getDisplay('M705_detail');
$reference = $this->model->getAllRecordInfo($id, '7'); //참고용파일 (2017.09.26 추가)
$hscp_info = [];
if (!empty($data['hscp_no'])) {
$apt_rlet_type_cd = ['A01', 'A02', 'A03', 'A04', 'B01', 'B02', 'B03'];
$villa_rlet_type_cd = ['A05', 'A06'];
if (in_array($data['rlet_type_cd'], $apt_rlet_type_cd)) { // apt 단지
$detail_hscp = $naver->aptDetail($data['hscp_no']);
}
if (in_array($data['rlet_type_cd'], $villa_rlet_type_cd)) { // villa 단지
$detail_hscp = $naver->villaDetail($data['hscp_no']);
}
$hscp_info = $detail_hscp['result'];
}
$this->data['codes'] = $codes;
$this->data['data'] = $data;
$this->data['record'] = $record;
@@ -172,6 +194,7 @@ class M705 extends BaseController
$this->data['memo'] = $memo;
$this->data['display'] = $display;
$this->data['reference'] = $reference;
$this->data['detail_hscp'] = $hscp_info;
return view("pages/v2/m705/detail", $this->data);
}
@@ -258,49 +281,51 @@ class M705 extends BaseController
$usr_id = session('usr_id');
$vr_sq = $this->request->getPost('vr_sq');
$file = $this->request->getFile('file');
if ($file && $file->isValid() && !$file->hasMoved()) {
$uploadPath = "/upload/v2_file/" . $vr_sq . "/";
$files = $this->request->getFiles();
$arrUploadfile = [];
if ($file->isValid() && !$file->hasMoved()) {
$uploadData = $lib->do_upload2($file, $uploadPath);
$uploadPath = "/upload/v2_file/" . $vr_sq . "/";
if ($uploadData !== false) {
$arrUploadfile[] = $uploadData;
}
}
if (!empty($arrUploadfile)) {
foreach ($arrUploadfile as $key => $uploadFile) {
$data = [
'vr_sq' => $vr_sq,
// 'file_sq' => $this->request->getPost('file_sq'),
'orig_name' => $uploadFile['origin_name'],
'new_name' => $uploadFile['file_name'],
'file_path' => $uploadPath, // 필요에 따라 상대경로로만 저장
'ext' => '.' . $uploadFile['ext'],
'size' => $file->getSize(),
'img_yn' => null,
'img_height' => null,
'img_width' => null,
'usr_id' => $usr_id,
];
}
if (!empty($data)) {
// 파일업로드 정보 저장
$this->model->saveFileInfo($data);
}
}
$file = $files['files'];
$arrUploadfile = [];
$uploadData = $lib->do_upload2($file, $uploadPath);
if ($uploadData !== false) {
$arrUploadfile[] = $uploadData;
}
if (!empty($arrUploadfile)) {
foreach ($arrUploadfile as $key => $uploadFile) {
$data = [
'vr_sq' => $vr_sq,
// 'file_sq' => $this->request->getPost('file_sq'),
'orig_name' => $uploadFile['origin_name'],
'new_name' => $uploadFile['file_name'],
'file_path' => $uploadPath, // 필요에 따라 상대경로로만 저장
'ext' => '.' . $uploadFile['ext'],
'size' => $file->getSize(),
'img_yn' => null,
'img_height' => null,
'img_width' => null,
'usr_id' => $usr_id,
];
// print_r($data);
// exit;
// if (!empty($data)) {
// 파일업로드 정보 저장
$this->model->saveFileInfo($data);
// }
}
}
return $this->response->setJSON([
'code' => '0',
@@ -317,6 +342,384 @@ class M705 extends BaseController
}
// 매물정보 저장
public function saveRegi()
{
/*
1.0.1 POST 데이터 받기.
1.1.1 1차 검증인지 2차검증인지 확인.
1.1.2 1차, 2차 검증이면 v2_confirm.type에 넣을 값을 알맞게 셋팅.
1.2.1 v2_confirms에 데이터가 있는지 확인.
1.3.1 데이터가 있음 : success 여부 판단 후 updateConfirm 실행 success값만 UPDATE. (수정변경이력 저장)
1.4.1 데이터가 없음 : success 여부 판단 후 insertConfirm 실행 v2_confirms INSERT. (수정변경이력 저장)
1.4.2 상태변경 하기 : 등기부등본 확인중 상태로 변경. (수정변경이력 저장)
1.5.1 이미지파일 서버에 UPLOAD (수정변경이력 저장)
1.6.1 기존파일 탐색.
1.7.1 기존파일 있음 : 기존파일 use_yn 'N'으로 UPDATE 후 v2_files INSERT.
1.8.1 기존파일 없음 : v2_files INSERT.
1.9.1 매물주소, 의뢰인 정보 v2_check_list INSERT. (수정변경이력 저장)
1.10.1 API 전송.
1.11.1 API 전송결과 : SUCCESS 이면 상태값 변경 : 등기부등본 확인완료 상태. (수정변경이력 저장)
*/
$naver = new NaverApiClient();
$model710 = new M710Model();
$model415 = new M415Model();
$v2DailyModel = new V2StDailyModel();
try {
$usr_id = session('usr_id');
$toDay = date('Y-m-d H:i:s');
$atcl_vrtc_way = 'R'; //검증구분
$atcl_vr_sq = $this->request->getPost('rcpt_key');
// $atcl_no = $this->request->getPost('atcl_no');
$reg_conf_yn_1 = $this->request->getPost('reg_conf_yn_1'); //확인내용
$reg_conf_yn_2 = $this->request->getPost('reg_conf_yn_2'); //매물주소
$reg_conf_yn_3 = $this->request->getPost('reg_conf_yn_3'); //의뢰인정보
$reg_conf_yn_info_2 = $this->request->getPost('reg_conf_yn_info_2'); //매물주소
$reg_conf_yn_info_3 = $this->request->getPost('reg_conf_yn_info_3'); //의뢰인정보
$memo = $this->request->getPost('memo'); //메모
$owner_verifiable = $this->request->getPost('owner_verifiable'); //실소유주 확인여부
$noimg_chk_chk = $this->request->getPost('noimg_chk_chk'); // 등기부등본이미지 파일없음.
$img_chk_chk = $this->request->getPost('img_chk_chk'); // 등기소, 리얼탑 열람, 리얼탑 기열람, 열람
$atcl_vrtc_type = $this->request->getPost('atcl_vrtc_type'); // 검증구분
$vrfc_type_sub = $this->request->getPost('vrfc_type_sub'); // 하위검증구분
$arr_uncnfrm_status = $this->request->getPost('arr_uncnfrm_status'); // 등기부등본 미확인여부 상세
$try_cnt = '0';
//상태가 이미 등기부등본확인중 이상이면 저장하지 않는다.
$resStat = $this->model->chkStat($atcl_vr_sq);
$v2_vrfc_req = $v2DailyModel->get_v2_vrfc_req($atcl_vr_sq);
$rlet_type_cd = $model415->get_rlet_type_cd($atcl_vr_sq);
if ($resStat['stat_cd'] >= '60' || $resStat['stat_cd'] == '19') {
throw new \Exception('이미 저장된 데이터입니다.');
} else {
$resultCnt = $this->model->chkRegiTryCnt($atcl_vr_sq); //1차검증인지 2차검증인지 확인 쿼리 : v2_vrfc_req.type_cnt
if ($resultCnt['reg_try_cnt'] == 0) { // 1차 검증일 때
log_message('debug', '705 page >> 매물번호 : ' . $atcl_vr_sq . ' 등기부등본 불일치 횟수 : 0 ');
$try_cnt = '1';
} else if ($resultCnt['reg_try_cnt'] == 1) { // 2차 검증일 때
log_message('debug', '705 page >> 매물번호 : ' . $atcl_vr_sq . ' 등기부등본 불일치 횟수 : 1 ');
$try_cnt = '2';
} else {
log_message('debug', '705 page >> 매물번호 : ' . $atcl_vr_sq . ' 등기부등본 불일치 횟수 : 예외처리 ');
$try_cnt = '2';
//$try_cnt = intval($try_cnt) + 1;
}
$result = $this->model->chkConfirm($atcl_vr_sq, $atcl_vrtc_way);
if ($result == 0) { //v2_confirm 존재하지 않는다면
if ($reg_conf_yn_2 == '10000' && $reg_conf_yn_3 == '10000') { //success 여부 판단
$chk_type = '1';
//$chk_delay = '0'; //지연여부
//$chk_zombie = '0'; //좀비매물
} else {
// 2015.06.29 추가
// 불일치가 날 경우에 10분 이내에 다시 불일치 처리 불가능(같은 매물을 두사람이 중복처리할 가능성 사전 방지)
// 1. 현재 매물의 마지막으로 업데이트 된 시간을 가져옴.
// 2. 현재 시간과 비교하여 10분 이내면 경고창을 띄어줌.
$chk_type = '0';
//$chk_delay = '1'; //지연여부
//$chk_zombie = '0'; //좀비매물
$result_tm = $this->model->getUpdateFailTime($atcl_vr_sq);
$update_tm = $result_tm['insert_tm'];
$ten_ago = date("Y-m-d H:i:s", mktime(date("H"), date("i") - 1, date("s"), date("m"), date("d"), date("Y")));
if ($update_tm > $ten_ago) {
// 수정한 시간이 현재시간10분전 보다 클 경우 수정불가능
throw new \Exception('이미 불일치 처리 된 매물입니다.');
}
}
$this->model->insertConfirm($atcl_vr_sq, $atcl_vrtc_way, $chk_type, $try_cnt);
} else {
if ($reg_conf_yn_2 == '10000' && $reg_conf_yn_3 == '10000') { //success 여부 판단
$chk_type = '1';
//$chk_delay = '0'; //지연여부
//$chk_zombie = '0'; //좀비매물
} else {
// 2015.06.29 추가
// 불일치가 날 경우에 10분 이내에 다시 불일치 처리 불가능(같은 매물을 두사람이 중복처리할 가능성 사전 방지)
// 1. 현재 매물의 마지막으로 업데이트 된 시간을 가져옴.
// 2. 현재 시간과 비교하여 10분 이내면 경고창을 띄어줌.
$chk_type = '0';
//$chk_delay = '1'; //지연여부
//$chk_zombie = '0'; //좀비매물
$result_tm = $this->model->getUpdateFailTime($atcl_vr_sq);
$update_tm = $result_tm['insert_tm'];
$ten_ago = date("Y-m-d H:i:s", mktime(date("H"), date("i") - 1, date("s"), date("m"), date("d"), date("Y")));
if ($update_tm > $ten_ago) {
throw new \Exception('이미 불일치 처리 된 매물입니다.');
}
}
$this->model->updateConfirm($atcl_vr_sq, $atcl_vrtc_way, $chk_type);
}
$this->model->InsResChar($atcl_vr_sq); //담당자 업데이트
// 모바일v1,v2고 등기부등본 미확인여부 상세 저장
if ($vrfc_type_sub == 'M1' || $vrfc_type_sub == 'O1') {
$this->model->add_cert_uncnfrm_status($atcl_vr_sq, $arr_uncnfrm_status);
if (strpos($arr_uncnfrm_status, '20020') !== false) { //등기부등본 미확인여부 상세에 20020(파일 오첨부)있고
if ($vrfc_type_sub == 'M1') { // 모바일v1일땐 코드 20020,코멘트x
$reg_conf_yn_2 = '20020';
$reg_conf_yn_info_2 = '';
} else { // 모바일v2일땐 일반 불일치코드,코멘트=파일 오첨부
$reg_conf_yn_info_2 = '파일 오첨부';
}
}
}
//v2_check_list 확인여부 INSERT
$this->model->insertChkList($atcl_vr_sq, $atcl_vrtc_way, '21', $reg_conf_yn_2, $reg_conf_yn_info_2);
//v2_check_list 매물주소 INSERT
$this->model->insertChkList($atcl_vr_sq, $atcl_vrtc_way, '22', $reg_conf_yn_3, $reg_conf_yn_info_3);
//memo 저장
$this->model->saveMemo(['vr_sq' => $atcl_vr_sq, 'memo' => $memo]);
//실소유주 확인 저장
$this->model->update_owner_verifiable($atcl_vr_sq, $owner_verifiable);
$sendData = $this->model->getDatacertAPI($atcl_vr_sq, 'R');
//이미지 파일 없음 && 홍보확인서 V2일 경우
log_message('debug', '705 noimage_chk_chk sendData_return1 => ' . $sendData['atclNo'] . ' ::: ' . json_encode($sendData) . PHP_EOL);
if ($noimg_chk_chk == "Y" && $sendData['vrfcType'] == "D2") {
// $sendData['ownerVerifiable'] = false;
}
$d_yn = $this->m710_model->get_send_yn('D');
if ($d_yn['stop_yn'] == 'N') { //전송금지
//1.해당매물정보를v2_stop_api_save_info에다 넣음
$model710->insert_v2_stop_api_save_info($sendData['atclNo'], $atcl_vr_sq, 'D', '');
//2.아무렇지않게 행동한다
$send_result['result'] = 'success';
} else {
//API 호출
$send_result = $naver->certification($sendData['atclNo'], $try_cnt, $sendData['success'], $sendData['checkList'], $sendData['charger'], $sendData['date'], $sendData['modifyInfo'], $sendData['ownerVerifiable']);
}
if ($send_result['result'] == 'success') {
if ($chk_type == '1') {
//상태변경 TABLE INSERT : 등기부등본 확인완료 상태로 변경
$result_query7 = $this->model->chgStat($atcl_vr_sq, '45', $toDay);
$chgVrfc45 = $this->model->chgStatVrfc($atcl_vr_sq, '45'); //v2_vrfc_req INSERT
$statFaxUp45 = $this->model->chgStatFax($atcl_vr_sq, '45'); //fax_imgs
//상태변경 TABLE INSERT : 검증완료 상태로 변경
$result_query8 = $this->model->chgStat($atcl_vr_sq, '60', $toDay);
$chgVrfc60 = $this->model->chgStatVrfc($atcl_vr_sq, '60'); //v2_vrfc_req INSERT
$statFaxUp60 = $this->model->chgStatFax($atcl_vr_sq, '60'); //fax_imgs
// ★ 검증완료
//0.불일치 이력이 있는지 확인
$cnt = $model415->get_cert_failTimeForHistory($atcl_vr_sq);
if (empty($cnt)) { //검증완료일땐 불일치가없어야 통계포함된다
if ($atcl_vrtc_type == 'M' || $atcl_vrtc_type == 'O') { //모바일은 등기가 첨 시작이니까 insert해줘야함
if (!($atcl_vrtc_type == 'M' && in_array($rlet_type_cd['rlet_type_cd'], array('B01', 'B02', 'B03')))) {//만약 분양권들이면 넘어가고 아니면 체크
//1.등기부등본 확인중 시간
$tel_doc_conf_dt = $model415->get_cert_M_timeForHistory($atcl_vr_sq);
//2.등기부등본 확인완료 시간
$cert_comple_dt = $model415->get_cert_confTimeForHistory($atcl_vr_sq);
//3.검증완료시간
$finishTime = $model415->get_60_ForHistory($atcl_vr_sq);
//4.해당 정보를 테이블에 넣는다
$model415->insert_v2_time_required_M($v2_vrfc_req['atcl_no'], $v2_vrfc_req['cpid'], $atcl_vrtc_type, $tel_doc_conf_dt['insert_tm'], $cert_comple_dt['insert_tm'], $finishTime['insert_tm']);
}
} else {
//1.등기부등본 확인중 시간
$tel_doc_conf_dt = $model415->get_cert_ing_TimeForHistory($atcl_vr_sq);
//2.등기부등본 확인완료 시간
$cert_comple_dt = $model415->get_cert_confTimeForHistory($atcl_vr_sq);
//3.해당 정보를 테이블에 넣는다
$model415->update_v2_time_required_Conf_Done($v2_vrfc_req['atcl_no'], $v2_vrfc_req['cpid'], $atcl_vrtc_type, $tel_doc_conf_dt['insert_tm'], $cert_comple_dt['insert_tm']);
}
}
if ($noimg_chk_chk == 'Y') {
$this->model->chgStat($atcl_vr_sq, '70', $toDay);
$this->model->updateStat($atcl_vr_sq, 'Y'); // reg_status를 업데이트해준다.
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0103', '1', 'add'); // 등기부등본이미지 없음 저장
}
if ($img_chk_chk == 'O') {
$this->model->chgStat($atcl_vr_sq, '76', $toDay);
$this->model->updateStat($atcl_vr_sq, 'O'); // reg_status를 업데이트해준다.
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0105', '1', 'add'); // (열람)간소화확인으로 저장
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0101', '1', 'add'); // 일치로 저장
} else if ($img_chk_chk == 'T') {
$this->model->chgStat($atcl_vr_sq, '80', $toDay);
$this->model->updateStat($atcl_vr_sq, 'T'); // reg_status를 업데이트해준다.
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0111', '1', 'add'); // 등기소로 일치로 저장
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0101', '1', 'add'); // 일치로 저장
} else if ($img_chk_chk == 'R') {
$this->model->chgStat($atcl_vr_sq, '86', $toDay);
$this->model->updateStat($atcl_vr_sq, 'R'); // reg_status를 업데이트해준다.
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0107', '1', 'add'); // 리얼탑 열람 일치로 저장
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0101', '1', 'add'); // 일치로 저장
} else if ($img_chk_chk == 'G') {
$this->model->chgStat($atcl_vr_sq, '87', $toDay);
$this->model->updateStat($atcl_vr_sq, 'G'); // reg_status를 업데이트해준다.
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0108', '1', 'add'); // 리얼탑 기열람 일치으로 저장
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0101', '1', 'add'); // 일치로 저장
}
} else {
if ($atcl_vrtc_type == 'M') {
//상태변경 TABLE INSERT : 등기부등본 확인 불일치 상태로 변경
$result_query7 = $this->model->chgStat($atcl_vr_sq, '49', $toDay);
$chgVrfc49 = $this->model->chgStatVrfc($atcl_vr_sq, '49'); //v2_vrfc_req INSERT
$statFaxUp49 = $this->model->chgStatFax($atcl_vr_sq, '49'); //fax_imgs
//v2_vrfc_req try_cnt 값을 1로 update
$res_try = $this->model->chgRegiTryCnt($atcl_vr_sq, '2');
//상태변경 TABLE INSERT : 검증실패 상태로 변경.
$result_query9 = $this->model->chgStat($atcl_vr_sq, '69', $toDay);
$chgVrfc69 = $this->model->chgStatVrfc($atcl_vr_sq, '69'); //v2_vrfc_req INSERT
$statFaxUp69 = $this->model->chgStatFax($atcl_vr_sq, '69'); //fax_imgs
// ★모바일이고 검증실패
if (!in_array($rlet_type_cd['rlet_type_cd'], array('B01', 'B02', 'B03'))) {//만약 분양권들이면 넘어가고 아니면 체크
//1.등기부등본 확인중 시간
$tel_doc_conf_dt = $model415->get_cert_M_timeForHistory($atcl_vr_sq);
//2.등기부등본 확인실패 시간
$cert_comple_dt = $model415->get_cert_failTimeForHistory($atcl_vr_sq);
//3.검증실패시간
$finishTime = $model415->get_69_ForHistory($atcl_vr_sq);
//4.해당 정보를 테이블에 넣는다
$model415->insert_v2_time_required_M($v2_vrfc_req['atcl_no'], $v2_vrfc_req['cpid'], $atcl_vrtc_type, $tel_doc_conf_dt['insert_tm'], $cert_comple_dt['insert_tm'], $finishTime['insert_tm']);
}
} else {
//상태변경 TABLE INSERT : 등기부등본 확인 불일치 상태로 변경
$result_query7 = $this->model->chgStat($atcl_vr_sq, '49', $toDay);
$chgVrfc49 = $this->model->chgStatVrfc($atcl_vr_sq, '49'); //v2_vrfc_req INSERT
$statFaxUp49 = $this->model->chgStatFax($atcl_vr_sq, '49'); //fax_imgs
//등기부등본 확인중 상태로 변경.
$result_query30 = $this->model->saveChangedHistory($atcl_vr_sq, '30', 'C9', $usr_id, '상태변경 : 49 => 30'); //검증결과 변동사항 HISTORY
$chgVrfc40 = $this->model->chgStatVrfc($atcl_vr_sq, '30'); //v2_vrfc_req INSERT
$statFaxUp40 = $this->model->chgStatFax($atcl_vr_sq, '30'); //fax_imgs
if ($try_cnt == '1') {
//v2_vrfc_req try_cnt 값을 1로 update
$this->model->chgRegiTryCnt($atcl_vr_sq, '1');
if ($atcl_vrtc_type == 'T') {
//검증구분이 전화매물일 경우 사전에 일치로 처리된 값을 초기화 시켜준다.
$this->model->resetTelConf($atcl_vr_sq);
}
// ★1차실패
if ($atcl_vrtc_type == 'O') {
//1.등기부등본 확인중 시간
$tel_doc_conf_dt = $model415->get_cert_M_timeForHistory($atcl_vr_sq);
//2.등기부등본 확인실패 시간
$cert_comple_dt = $model415->get_cert_failTimeForHistory($atcl_vr_sq);
//3.검증실패시간
$finishTime = $model415->get_69_ForHistory($atcl_vr_sq);
//4.해당 정보를 테이블에 넣는다
$model415->insert_v2_time_required_M($v2_vrfc_req['atcl_no'], $v2_vrfc_req['cpid'], $atcl_vrtc_type, $tel_doc_conf_dt['insert_tm'], $cert_comple_dt['insert_tm'], $finishTime['insert_tm']);
} else {
//1.등기부등본 확인중 시간
$tel_doc_conf_dt = $model415->get_cert_ing_TimeForHistory($atcl_vr_sq);
//2.등기부등본 확인실패 시간
$cert_comple_dt = $model415->get_cert_failTimeForHistory($atcl_vr_sq);
//3.해당 정보를 테이블에 넣는다
$sf = 'F';
$model415->update_v2_time_required_Conf($v2_vrfc_req['atcl_no'], $v2_vrfc_req['cpid'], $atcl_vrtc_type, $tel_doc_conf_dt['insert_tm'], $cert_comple_dt['insert_tm'], $sf);
}
} else if ($try_cnt == '2') {
//v2_vrfc_req try_cnt 값을 2로 update
$this->model->chgRegiTryCnt($atcl_vr_sq, '2');
//상태변경 TABLE INSERT : 검증실패 상태로 변경.
$this->model->chgStat($atcl_vr_sq, '69', $toDay);
$this->model->chgStatVrfc($atcl_vr_sq, '69'); //v2_vrfc_req INSERT
$this->model->chgStatFax($atcl_vr_sq, '69'); //fax_imgs
// ★모바일 이외 검증실패
if ($atcl_vrtc_type == 'O') {
//1.등기부등본 확인중 시간
$tel_doc_conf_dt = $model415->get_cert_M_timeForHistory($atcl_vr_sq);
//2.등기부등본 확인실패 시간
$cert_comple_dt = $model415->get_cert_failTimeForHistory($atcl_vr_sq);
//3.검증실패시간
$finishTime = $model415->get_69_ForHistory($atcl_vr_sq);
//4.해당 정보를 테이블에 넣는다
$model415->insert_v2_time_required_M($v2_vrfc_req['atcl_no'], $v2_vrfc_req['cpid'], $atcl_vrtc_type, $tel_doc_conf_dt['insert_tm'], $cert_comple_dt['insert_tm'], $finishTime['insert_tm']);
} else {
//1.등기부등본 확인중 시간
$tel_doc_conf_dt = $model415->get_cert_ing_TimeForHistory($atcl_vr_sq);
//2.등기부등본 확인실패 시간
$cert_comple_dt = $model415->get_cert_failTimeForHistory($atcl_vr_sq);
//3.해당 정보를 테이블에 넣는다
$model415->update_v2_time_required_Conf_Done($v2_vrfc_req['atcl_no'], $v2_vrfc_req['cpid'], $atcl_vrtc_type, $tel_doc_conf_dt['insert_tm'], $cert_comple_dt['insert_tm']);
}
}
}
if ($noimg_chk_chk == 'Y') {
$this->model->chgStat($atcl_vr_sq, '70', $toDay);
$this->model->updateStat($atcl_vr_sq, 'Y'); // reg_status를 업데이트해준다.
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0103', '1', 'add'); // 등기부등본이미지 없음 저장
}
if ($img_chk_chk == 'O') {
$this->model->chgStat($atcl_vr_sq, '77', $toDay);
$this->model->updateStat($atcl_vr_sq, 'O'); // reg_status를 업데이트해준다.
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0105', '1', 'add'); // (열람)간소화확인으로 저장
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0102', '1', 'add'); // 불일치로 저장
} else if ($img_chk_chk == 'T') {
$this->model->chgStat($atcl_vr_sq, '85', $toDay);
$this->model->updateStat($atcl_vr_sq, 'T'); // reg_status를 업데이트해준다.
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0112', '1', 'add'); // 등기소 불일치로 저장
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0102', '1', 'add'); // 불일치로 저장
} else if ($img_chk_chk == 'R') {
$this->model->chgStat($atcl_vr_sq, '88', $toDay);
$this->model->updateStat($atcl_vr_sq, 'R'); // reg_status를 업데이트해준다.
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0109', '1', 'add'); // 리얼탑 열람 불일치로 저장
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0102', '1', 'add'); // 불일치로 저장
} else if ($img_chk_chk == 'G') {
$this->model->chgStat($atcl_vr_sq, '89', $toDay);
$this->model->updateStat($atcl_vr_sq, 'G'); // reg_status를 업데이트해준다.
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0110', '1', 'add'); // 리얼탑 기열람 불일치로 저장
$v2DailyModel->set_v2_st_daily(NULL, $v2_vrfc_req['cpid'], 'R0102', '1', 'add'); // 불일치로 저장
}
}
} else {
if (isset($send_result['error'])) {
$error_message = $send_result['error']['code'] . "\\n" . $send_result['error']['message'];
// API 호출 에러 발생시 해당 내용들을 DB에 저장해준다.
$err_time = date("Y-m-d H:i:s");
$this->model->saveApiErr($atcl_vr_sq, $send_result['error']['code'], $send_result['error']['message'], $err_time, $v2_vrfc_req['atcl_no']);
throw new \Exception($error_message);
} else {
throw new \Exception('네이버 전송 중 오류가 발생되었습니다. 다시 시도하세요.');
}
}
}
} catch (\Exception $e) {
return $this->response->setJSON([
'code' => '9',
'msg' => $e->getMessage(),
]);
}
}
// 다음매물 확인
public function getNextInfo()
{

View File

@@ -70,4 +70,6 @@ class V2StDailyModel extends Model
$row = $builder->get()->getRowArray();
return $row;
}
}

View File

@@ -584,4 +584,18 @@ class M415Model extends Model
);
$this->db->query($sql, $data);
}
public function get_rlet_type_cd($vr_sq)
{
$sql = "SELECT rlet_type_cd
FROM v2_article_info
WHERE vr_sq = ?";
$data = array(
$vr_sq
);
$query = $this->db->query($sql, $data);
$res = $query->getRowArray();
return $res;
}
}

View File

@@ -248,22 +248,22 @@ class M705Model extends Model
}
// 본부
if (!empty($data['bonbu'])) {
if ($data['charger_gbn'] === "1") {
$sql .= "AND a.dept1_sq = '{$data['bonbu']}' ";
} else {
$sql .= "AND a.reg_dept1_sq = '{$data['bonbu']}' ";
}
}
// if (!empty($data['bonbu'])) {
// if ($data['charger_gbn'] === "1") {
// $sql .= "AND a.dept1_sq = '{$data['bonbu']}' ";
// } else {
// $sql .= "AND a.reg_dept1_sq = '{$data['bonbu']}' ";
// }
// }
// 팀
if (!empty($data['team'])) {
if ($data['charger_gbn'] === "1") {
$sql .= "AND a.dept2_sq = '{$data['team']}' ";
} else {
$sql .= "AND a.reg_dept2_sq = '{$data['team']}' ";
}
}
// if (!empty($data['team'])) {
// if ($data['charger_gbn'] === "1") {
// $sql .= "AND a.dept2_sq = '{$data['team']}' ";
// } else {
// $sql .= "AND a.reg_dept2_sq = '{$data['team']}' ";
// }
// }
// 매물종류
if (!empty($data['rlet_type_cd'])) {
@@ -479,22 +479,22 @@ class M705Model extends Model
}
// 본부
if (!empty($data['bonbu'])) {
if ($data['charger_gbn'] === "1") {
$sql .= "AND a.dept1_sq = '{$data['bonbu']}' ";
} else {
$sql .= "AND a.reg_dept1_sq = '{$data['bonbu']}' ";
}
}
// if (!empty($data['bonbu'])) {
// if ($data['charger_gbn'] === "1") {
// $sql .= "AND a.dept1_sq = '{$data['bonbu']}' ";
// } else {
// $sql .= "AND a.reg_dept1_sq = '{$data['bonbu']}' ";
// }
// }
// 팀
if (!empty($data['team'])) {
if ($data['charger_gbn'] === "1") {
$sql .= "AND a.dept2_sq = '{$data['team']}' ";
} else {
$sql .= "AND a.reg_dept2_sq = '{$data['team']}' ";
}
}
// if (!empty($data['team'])) {
// if ($data['charger_gbn'] === "1") {
// $sql .= "AND a.dept2_sq = '{$data['team']}' ";
// } else {
// $sql .= "AND a.reg_dept2_sq = '{$data['team']}' ";
// }
// }
// 매물종류
if (!empty($data['rlet_type_cd'])) {
@@ -526,6 +526,8 @@ class M705Model extends Model
$sql .= "LIMIT {$start}, {$end}";
// echo $sql;
$query = $this->db->query($sql);
return $query->getResultArray();
@@ -739,22 +741,22 @@ class M705Model extends Model
}
// 본부
if (!empty($data['bonbu'])) {
if ($data['charger_gbn'] === "1") {
$sql .= "AND a.dept1_sq = '{$data['bonbu']}' ";
} else {
$sql .= "AND a.reg_dept1_sq = '{$data['bonbu']}' ";
}
}
// if (!empty($data['bonbu'])) {
// if ($data['charger_gbn'] === "1") {
// $sql .= "AND a.dept1_sq = '{$data['bonbu']}' ";
// } else {
// $sql .= "AND a.reg_dept1_sq = '{$data['bonbu']}' ";
// }
// }
// 팀
if (!empty($data['team'])) {
if ($data['charger_gbn'] === "1") {
$sql .= "AND a.dept2_sq = '{$data['team']}' ";
} else {
$sql .= "AND a.reg_dept2_sq = '{$data['team']}' ";
}
}
// if (!empty($data['team'])) {
// if ($data['charger_gbn'] === "1") {
// $sql .= "AND a.dept2_sq = '{$data['team']}' ";
// } else {
// $sql .= "AND a.reg_dept2_sq = '{$data['team']}' ";
// }
// }
// 매물종류
if (!empty($data['rlet_type_cd'])) {
@@ -1032,32 +1034,32 @@ class M705Model extends Model
$sql = "UPDATE v2_files SET use_yn = 'N' WHERE vr_sq = {$data['vr_sq']} AND use_yn = 'Y' AND file_type '2'";
$this->db->query($sql);
}
$sql = "INSERT INTO v2_files
$sql = "INSERT INTO v2_files
(vr_sq, file_type, view_odr, file_path, file_name, file_ext, file_size, insert_user, insert_tm, cloud_upload_yn)
VALUES
(?, '2', 0, ?, ?, ?, ?, ?, NOW(), 'Y')
";
$param = [
$data['vr_sq'],
$data['file_path'],
$data['new_name'],
$data['ext'],
$data['size'],
$data['usr_id'],
$param = [
$data['vr_sq'],
$data['file_path'],
$data['new_name'],
$data['ext'],
$data['size'],
$data['usr_id'],
];
if ($this->db->query($sql, $param) === false) {
return [
'success' => false,
'msg' => '파일정보 저장 실패',
];
if ($this->db->query($sql, $param)) {
return [
'success' => false,
'msg' => '파일정보 저장 실패',
];
}
}
$this->db->transComplete();
return [
@@ -1094,4 +1096,476 @@ class M705Model extends Model
return $row;
}
public function chkRegiTryCnt($atcl_vr_sq)
{
// 1차 검증인지 2차 검증인지 확인
$sql = "SELECT reg_try_cnt
FROM v2_vrfc_req
WHERE vr_sq = ?";
$query = $this->db->query($sql, [$atcl_vr_sq]);
return $query->getRowArray();
}
public function chkConfirm($atcl_vr_sq, $reg_yn)
{
// 검증결과 table에 있는지 확인.
$builder = $this->db->table('v2_confirm');
$builder->select('vr_sq');
$builder->where('vr_sq', $atcl_vr_sq);
if ($reg_yn) {
$builder->where('vrfc_type', $reg_yn); // 등기부등본 정보 확인시
}
$query = $builder->get();
$result = $query->getNumRows();
return $result;
}
public function getUpdateFailTime($vr_sq)
{
$sql = "select vr_sq, stat_cd, insert_user, insert_tm " .
"from v2_chg_stat " .
"where vr_sq = ? and stat_cd = '49' " .
"order by insert_tm desc " .
"limit 1";
$data = array($vr_sq);
$query = $this->db->query($sql, $data);
$row = $query->getRowArray();
return $row;
}
public function insertConfirm($vr_sq, $vrfc_type, $success, $type)
{ //v2_confirm INSERT
$usr_sq = session('usr_sq');
$usr_id = session('usr_id');
$sql = "INSERT INTO v2_confirm" .
"(vr_sq, vrfc_type, success, type, charger, date, insert_user, insert_tm, update_user, update_tm)" .
"VALUES" .
"(?, ?, ?, ?, ?, '" . date('YmdHis') . "', ?, NOW(), ?, NOW())";
$data = array(
$vr_sq,
$vrfc_type,
$success,
$type,
$usr_id,
$usr_sq,
$usr_sq
);
$this->db->query($sql, $data);
}
public function updateConfirm($vr_sq, $vrfc_type, $success)
{
$data = [
'success' => $success,
'update_user' => session('usr_sq'),
'update_tm' => date('Y-m-d H:i:s')
];
$builder = $this->db->table('v2_confirm');
$builder->where('vr_sq', $vr_sq);
$builder->where('vrfc_type', $vrfc_type);
$builder->update($data);
$error = $this->db->error();
return [
'error_number' => $error['code'],
'error_message' => $error['message']
];
}
public function InsResChar($atcl_vr_sq)
{
$usr_id = $this->session->userdata('usr_id');
$sql = "UPDATE v2_article_info" .
" SET reg_charger = ?" .
" WHERE vr_sq = ?";
$data = array(
$usr_id,
$atcl_vr_sq
);
$res = $this->db->query($sql, $data);
$log_v = $this->db->getLastQuery();
log_message('debug', $log_v);
}
public function add_cert_uncnfrm_status($vr_sq, $cert_uncnfrm_status)
{
$builder = $this->db->table('v2_article_info');
$builder->select('vr_sq, atcl_no');
$builder->where('vr_sq', $vr_sq);
$query = $builder->get();
if ($query->getNumRows() > 0) {
$row = $query->getRowArray();
$atcl_no = $row['atcl_no'];
$sql = "INSERT INTO v2_article_info_etc (vr_sq, atcl_no, cert_uncnfrm_status)" .
" VALUES (?, ?, ?)" .
" ON DUPLICATE KEY UPDATE cert_uncnfrm_status = ?";
$data = [
$vr_sq,
$atcl_no,
$cert_uncnfrm_status,
$cert_uncnfrm_status
];
$this->db->query($sql, $data);
}
}
public function insertChkList($vr_sq, $vrfc_type, $type, $code, $comment)
{ //v2_check_list INSERT
$usr_sq = session('usr_sq');
$sql = "INSERT INTO v2_check_list" .
"(vr_sq, vrfc_type, type, code, comment, insert_user, insert_tm)" .
"VALUES" .
"(?, ?, ?, ?, ?, ?, NOW())" .
" ON DUPLICATE KEY UPDATE" .
" vr_sq=values(vr_sq), vrfc_type=values(vrfc_type), type=values(type), code=values(code), comment=values(comment), insert_user=values(insert_user), insert_tm=values(insert_tm)";
$data = array(
$vr_sq,
$vrfc_type,
$type,
$code,
$comment,
$usr_sq
);
$res = $this->db->query($sql, $data);
}
// 메모저장
public function saveMemo($data)
{
$usr_id = session('usr_id');
$sql = "UPDATE v2_vrfc_req SET
memo = ?
WHERE vr_sq = ?";
if ($this->db->query($sql, $data) === false) {
return [
'success' => false,
'msg' => '파일정보 저장 실패',
];
}
$row = $this->getDetail($data[1]);
$memo = "메모변경 : " . $row['memo'] . " => " . $data[0];
$this->saveChangedHistory($data[1], $row['pre_stat_cd'], 'C19', $usr_id, $memo);
return [
'success' => true
];
}
public function update_owner_verifiable($vr_sq, $owner_verifiable)
{
$sql = "UPDATE v2_vrfc_req" .
" SET owner_verifiable = ?" .
" WHERE vr_sq = ?";
$data = array(
$owner_verifiable,
$vr_sq
);
$this->db->query($sql, $data);
$s = $this->db->getLastQuery();
log_message('debug', "====update_owner_verifiable====" . $s);
}
/* 등기부등본 API 호출*/
public function getDatacertAPI($vr_sq, $vrfc_type = '')
{
// 요청정보
$sql = "SELECT vr_sq, atcl_no, step, cpid, cp_atcl_id, trade_type, realtor_nm, realtor_tel_no, seller_tel_no, vrfc_type, rgbk_confirm, req_type, rdate, stat_cd, try_cnt, insert_user, insert_tm, owner_verifiable" .
" FROM v2_vrfc_req WHERE vr_sq = ?";
$query = $this->db->query($sql, [$vr_sq]);
$row_vrfc_req = $query->getRowArray();
if (!empty($vrfc_type)) {
$row_vrfc_req['vrfc_type'] = $vrfc_type;
}
log_message('debug', 'getDatacertApi_query => ' . $this->db->getLastQuery());
log_message('debug', 'getDatacertApi_result => ' . json_encode($row_vrfc_req));
// 매물정보
$sql = "SELECT vr_sq, atcl_no, cpid, cp_atcl_id, rlet_type_cd, trade_type, address_code, address1, address2, address3, sply_spc, excls_spc, tot_spc, grnd_spc, bldg_spc, deal_amt, wrrnt_amt, lease_amt, isale_amt, prem_amt, sise, floor, rdate, seller_tel_no, seller_nm, realtor_nm, realtor_tel_no, hscp_no, hscp_nm, ptp_no, ptp_nm, charger, req_price_yn, reg_charger, dept1_sq, dept2_sq, reg_dept1_sq, reg_dept2_sq, floor2, vrfc_type_sub" .
" FROM v2_article_info WHERE vr_sq = ?";
$query = $this->db->query($sql, [$vr_sq]);
$row_article_info = $query->getRowArray();
log_message('debug', $this->db->getLastQuery());
// 수정정보
$sql = "SELECT vr_sq, bild_nm, rm_no, floor, address_code, address2, address3, trade_type, deal_amt, wrrnt_amt, lease_amt, isale_amt, prem_amt, sply_spc, excls_spc, tot_spc, grnd_spc, bldg_spc, hscp_no, hscp_nm, ptp_no, ptp_nm, modify_yn, floor2" .
" FROM v2_modify_info WHERE vr_sq = ?";
$query = $this->db->query($sql, [$vr_sq]);
$row_modify_info = $query->getRowArray();
log_message('debug', $this->db->getLastQuery());
// 검증결과
$sql = "SELECT vr_sq, vrfc_type, success, type, charger, date, insert_user, insert_tm, update_user, update_tm, work_type" .
" FROM v2_confirm WHERE vr_sq = ? AND vrfc_type = ?";
$query = $this->db->query($sql, [$vr_sq, $row_vrfc_req['vrfc_type']]);
$row_confirm = $query->getRowArray();
log_message('debug', $this->db->getLastQuery());
// 확인정보
$sql = "SELECT a.type, a.code, a.comment, b.ownerNm, b.owner_birth" .
" FROM v2_check_list a" .
" INNER JOIN v2_article_info b ON a.vr_sq = b.vr_sq" .
" WHERE a.vr_sq = ? AND a.vrfc_type = ?";
$query = $this->db->query($sql, [$vr_sq, $row_vrfc_req['vrfc_type']]);
$res_check_list = $query->getResultArray();
log_message('debug', $this->db->getLastQuery());
log_message('debug', implode(', ', $row_confirm));
$atclNo = $row_vrfc_req['atcl_no'];
$type = $row_vrfc_req['try_cnt'];
$success = empty($row_confirm['success']) ? false : true;
$charger = $row_confirm['charger'];
$date = $row_confirm['date'];
switch ($row_vrfc_req['owner_verifiable']) {
case "1":
case "true":
$ownerVerifiable = true;
break;
default:
$ownerVerifiable = false;
break;
}
$checkList = [];
foreach ($res_check_list as $row) {
$checkList[] = [
'type' => $row['type'],
'code' => $row['code'],
'comment' => $row['comment'],
'ownerNm' => $row['ownerNm'],
'ownerBirth' => $row['owner_birth'],
];
}
$modifyInfo = [];
if ($row_modify_info['modify_yn'] == 'Y') {
if (!empty($row_modify_info['hscp_no'])) {
// 공동주택
$modifyInfo = [
'hscpNo' => $row_modify_info['hscp_no'],
'ptpNo' => $row_modify_info['ptp_no'],
'bildNm' => $row_modify_info['address2'],
'rmNo' => $row_modify_info['address3'],
'tradeType' => $row_modify_info['trade_type'],
'dealAmt' => $row_modify_info['deal_amt'],
'wrrntAmt' => $row_modify_info['wrrnt_amt'],
'leaseAmt' => $row_modify_info['lease_amt'],
'isaleAmt' => $row_modify_info['isale_amt'],
'premAmt' => $row_modify_info['prem_amt'],
'floor' => $row_modify_info['floor'],
];
} else {
// 비공동주택
$modifyInfo = [
'addressCode' => $row_modify_info['address_code'],
'address2' => $row_modify_info['address2'],
'address3' => $row_modify_info['address3'],
'tradeType' => $row_modify_info['trade_type'],
'dealAmt' => $row_modify_info['deal_amt'],
'wrrntAmt' => $row_modify_info['wrrnt_amt'],
'leaseAmt' => $row_modify_info['lease_amt'],
'splySpc' => $row_modify_info['sply_spc'],
'exclsSpc' => $row_modify_info['excls_spc'],
'totSpc' => $row_modify_info['tot_spc'],
'grndSpc' => $row_modify_info['grnd_spc'],
'bldgSpc' => $row_modify_info['bldg_spc'],
'floor' => $row_modify_info['floor'],
'floor2' => $row_modify_info['floor2'],
];
}
$return_data = [
'atclNo' => $atclNo,
'type' => $type,
'success' => $success,
'checkList' => $checkList,
'charger' => $charger,
'modifyInfo' => $modifyInfo,
'date' => $date,
'vrfcType' => $row_article_info['vrfc_type_sub'],
'ownerVerifiable' => $ownerVerifiable,
];
log_message('debug', "705 getDatacertAPI_1 {$atclNo} ::: " . json_encode($return_data) . PHP_EOL);
return $return_data;
} else {
$return_data = [
'atclNo' => $atclNo,
'type' => $type,
'success' => $success,
'checkList' => $checkList,
'charger' => $charger,
'date' => $date,
'vrfcType' => $row_article_info['vrfc_type_sub'],
'ownerVerifiable' => $ownerVerifiable,
];
log_message('debug', "705 getDatacertAPI_2 {$atclNo} ::: " . json_encode($return_data) . PHP_EOL);
return $return_data;
}
}
public function chgStat($vr_sq, $stat_cd, $insert_tm)
{
$usr_sq = session('usr_sq');
$usr_id = session('usr_id');
$list = $this->getDetail($vr_sq);
$sql = "INSERT INTO v2_chg_stat (vr_sq, stat_cd, insert_user, insert_tm)" .
" VALUES (?, ?, ?, ?)" .
" ON DUPLICATE KEY UPDATE" .
" vr_sq=VALUES(vr_sq), stat_cd=VALUES(stat_cd), insert_user=VALUES(insert_user), insert_tm=VALUES(insert_tm)";
$data = [
$vr_sq,
$stat_cd,
$usr_sq,
$insert_tm
];
$this->db->transStart();
$this->db->query($sql, $data);
$error = $this->db->error();
$return = [
'error_number' => $error['code'],
'error_message' => $error['message']
];
if (empty($return['error_number'])) {
if ($this->db->affectedRows() > 0) {
$changed = $this->whatIsChanged($list, $data, '');
if (!empty($changed)) {
$this->saveChangedHistory($list['vr_sq'], $stat_cd, 'C9', $usr_id, $changed);
}
}
}
$this->db->transComplete();
return $return;
}
public function chgStatVrfc($vr_sq, $stat_cd)
{
$data = ['stat_cd' => $stat_cd];
$builder = $this->db->table('v2_vrfc_req');
$builder->where('vr_sq', $vr_sq);
$builder->update($data);
$error = $this->db->error();
return [
'error_number' => $error['code'],
'error_message' => $error['message']
];
}
public function chgStatFax($vr_sq, $stat_cd)
{
$data = ['stat_cd' => $stat_cd];
$builder = $this->db->table('fax_imgs');
$builder->where('vr_sq', $vr_sq);
$builder->update($data);
$error = $this->db->error();
return [
'error_number' => $error['code'],
'error_message' => $error['message']
];
}
public function updateStat($vr_sq, $reg_status)
{
$data = ['reg_status' => $reg_status];
$builder = $this->db->table('v2_article_info');
$builder->where('vr_sq', $vr_sq);
$builder->update($data);
$error = $this->db->error();
return [
'error' => [
'code' => $error['code'],
'message' => $error['message']
]
];
}
public function chgRegiTryCnt($vr_sq, $try_cnt)
{ //v2_vrfc_req try_cnt 값 변경.
$sql = "UPDATE v2_vrfc_req" .
" SET reg_try_cnt = ?" .
" WHERE vr_sq = ?";
$data = array(
$try_cnt,
$vr_sq
);
$this->db->query($sql, $data);
}
public function resetTelConf($vr_sq)
{
$sql = "update v2_check_list " .
"set code = '' " .
"where type in ('T11', 'T12', 'T13', 'T14') " .
"and vr_sq = ?";
$data = array($vr_sq);
$this->db->query($sql, $data);
}
}

View File

@@ -545,83 +545,83 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
onclick="priceChange();" style="display: none;">가격수정</button>
<button class="mb-2 me-2 btn-transition btn btn-outline-secondary" id="btnModify">수정</button>
<button class="mb-2 me-2 btn btn-primary" id="btnSave" onclick="modifyInfo();" disabled>저장</button>
</div>
</div>
<?php endif; ?>
</div>
</div>
<?php if (!empty($detail_hscp)): ?>
<?php
$apt_rlet_type_cd = ['A01', 'A02', 'A03', 'A04', 'B01', 'B02', 'B03'];
$villa_rlet_type_cd = ['A05', 'A06'];
if (in_array($detail_hscp['aptType'], $apt_rlet_type_cd)):
?>
<div class="main-card mb-3 card">
<div class="card-body ">
<h5 class="card-title">단지 정보</h5>
<table class="table table-bordered table-sm tbl_basic2 apt-info-table">
<tr>
<th>단지명</th>
<td><?= $detail_hscp['aptName']; ?></td>
<th>소재주소</th>
<td><?= $detail_hscp['addr']; ?></td>
<th>상세주소</th>
<td><?= $detail_hscp['dtlAddr']; ?></td>
<th>사용승인일</th>
<td><?= $detail_hscp['useAprvYmd']; ?></td>
<th>단지 총 동수</th>
<td><?= $detail_hscp['dongCount']; ?></td>
</tr>
</table>
</div>
</div>
<?php endif; ?>
<?php
$apt_rlet_type_cd = ['A01', 'A02', 'A03', 'A04', 'B01', 'B02', 'B03'];
$villa_rlet_type_cd = ['A05', 'A06'];
if (in_array($detail_hscp['aptType'], $apt_rlet_type_cd)):
?>
<div class="main-card mb-3 card">
<div class="card-body ">
<h5 class="card-title">단지 정보</h5>
<table class="table table-bordered table-sm tbl_basic2 apt-info-table">
<tr>
<th>단지명</th>
<td><?= $detail_hscp['aptName']; ?></td>
<th>소재주소</th>
<td><?= $detail_hscp['addr']; ?></td>
<th>상세주소</th>
<td><?= $detail_hscp['dtlAddr']; ?></td>
<th>사용승인일</th>
<td><?= $detail_hscp['useAprvYmd']; ?></td>
<th>단지 총 동수</th>
<td><?= $detail_hscp['dongCount']; ?></td>
</tr>
</table>
</div>
</div>
<?php endif; ?>
<?php
if (in_array($detail_hscp['aptType'], $villa_rlet_type_cd)):
?>
<div class="main-card mb-3 card">
<div class="card-body ">
<h5 class="card-title">단지 정보</h5>
<table class="table table-bordered table-sm tbl_basic2 apt-info-table">
<tr>
<th>단지명</th>
<td><?= $detail_hscp['villaName']; ?></td>
<th>단지타입명</th>
<td colspan="3"><?= $detail_hscp['villaTypeName']; ?></td>
<th>단지 총 세대수</th>
<td><?= $detail_hscp['totHsehCnt']; ?></td>
<th>단지 총 동수 </th>
<td><?= $detail_hscp['totDongCnt']; ?></td>
<?php
if (in_array($detail_hscp['aptType'], $villa_rlet_type_cd)):
?>
<div class="main-card mb-3 card">
<div class="card-body ">
<h5 class="card-title">단지 정보</h5>
<table class="table table-bordered table-sm tbl_basic2 apt-info-table">
<tr>
<th>단지명</th>
<td><?= $detail_hscp['villaName']; ?></td>
<th>단지타입명</th>
<td colspan="3"><?= $detail_hscp['villaTypeName']; ?></td>
<th>단지 총 세대수</th>
<td><?= $detail_hscp['totHsehCnt']; ?></td>
<th>단지 총 동수 </th>
<td><?= $detail_hscp['totDongCnt']; ?></td>
<th>주소(광역시/도)</th>
<td><?= $detail_hscp['city']; ?></td>
<th>주소(시군구)</th>
<td><?= $detail_hscp['dvsn']; ?></td>
<th>주소(광역시/도)</th>
<td><?= $detail_hscp['city']; ?></td>
<th>주소(시군구)</th>
<td><?= $detail_hscp['dvsn']; ?></td>
<th>주소(읍면동)</th>
<td><?= $detail_hscp['sec']; ?></td>
<th>소재 동이하 상세주소</th>
<td><?= $detail_hscp['dtlAddr']; ?></td>
</tr>
<tr>
<th>소재 주소(전체)</th>
<td colspan="17"><?= $detail_hscp['addr']; ?></td>
</tr>
</table>
</div>
</div>
<?php endif; ?>
<th>주소(읍면동)</th>
<td><?= $detail_hscp['sec']; ?></td>
<th>소재 동이하 상세주소</th>
<td><?= $detail_hscp['dtlAddr']; ?></td>
</tr>
<tr>
<th>소재 주소(전체)</th>
<td colspan="17"><?= $detail_hscp['addr']; ?></td>
</tr>
</table>
</div>
</div>
<?php endif; ?>
<?php endif; ?>
<div class="main-card mb-3 card">
<div class="card-body ">
<h5 class="card-title">상태변경</h5>
<?php foreach ($codes as $c): ?>
<?php if ($c['category'] === "STEP_VERIFICATION"): ?>
<button class="mb-2 me-2 btn btn-light"
onclick="fn_status_change(<?= $data['vr_sq'] ?>, '<?= $c['cd'] ?>', '<?= $c['cd_nm'] ?>');"><?= $c['cd_nm'] ?></button>
<?php endif; ?>
<?php if ($c['category'] === "STEP_VERIFICATION"): ?>
<button class="mb-2 me-2 btn btn-light"
onclick="fn_status_change(<?= $data['vr_sq'] ?>, '<?= $c['cd'] ?>', '<?= $c['cd_nm'] ?>');"><?= $c['cd_nm'] ?></button>
<?php endif; ?>
<?php endforeach; ?>
</div>
</div>
@@ -644,59 +644,59 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
<div id="douc_img_dis" class="py-2">
<?php if (!empty($data['confirm_doc_img_url'])): ?>
<?php if ($data['confirm_doc_img_url_save_yn'] == 'Y'):
$img_path = $record['file_path'] . $record['file_name'];
$ext = $record['file_ext'];
<?php if ($data['confirm_doc_img_url_save_yn'] == 'Y'):
$img_path = $record['file_path'] . $record['file_name'];
$ext = $record['file_ext'];
if (strtolower($ext) == '.pdf'):
if (strtolower($ext) == '.pdf'):
?>
<iframe src="<?= $server_addr ?><?= $img_path ?>" frameborder="0"
style="padding: 10px 0;width:100%; height:800px;"></iframe><br>
<?php elseif (!in_array($ext, ['.zip', '.ZIP', '.pdf', '.PDF'])): ?>
<?php foreach ($arrRecord as $row):
$arr_img_path = $row['file_path'] . $row['file_name'];
?>
<iframe src="<?= $server_addr ?><?= $img_path ?>" frameborder="0"
style="padding: 10px 0;width:100%; height:800px;"></iframe><br>
<?php elseif (!in_array($ext, ['.zip', '.ZIP', '.pdf', '.PDF'])): ?>
<?php foreach ($arrRecord as $row):
$arr_img_path = $row['file_path'] . $row['file_name'];
?>
<a href="<?= $arr_img_path ?>">
<?php if (strcmp($img_path, $arr_img_path) == 0): ?>
<img id="photo-display" src="<?= $img_path ?>" alt="Image"
style="width:100%;max-width:945px;min-width:100%;border:0;" />
<?php endif; ?>
</a>
<?php endforeach; ?>
<?php endif; ?>
<?php else:
$img_path = $data['confirm_doc_img_url'];
$ext = strrchr($data['confirm_doc_img_url'], "."); //맨뒤에.부터 자른다
if (strtolower($ext) == '.pdf'):
?>
<iframe src="<?= $img_path ?>" frameborder="0"
style="padding: 10px 0;width:100%; height:800px;"></iframe>
<?php else: ?>
<?php endif; ?>
<img id="photo-display" src="<?= $img_path ?>" alt="Image"
style="width:100%;max-width:945px;min-width:100%;border:0;" />
<a href="<?= $arr_img_path ?>">
<?php if (strcmp($img_path, $arr_img_path) == 0): ?>
<img id="photo-display" src="<?= $img_path ?>" alt="Image"
style="width:100%;max-width:945px;min-width:100%;border:0;" />
<?php endif; ?>
</a>
<?php endforeach; ?>
<?php endif; ?>
<?php else:
$img_path = $data['confirm_doc_img_url'];
$ext = strrchr($data['confirm_doc_img_url'], "."); //맨뒤에.부터 자른다
if (strtolower($ext) == '.pdf'):
?>
<iframe src="<?= $img_path ?>" frameborder="0"
style="padding: 10px 0;width:100%; height:800px;"></iframe>
<?php else: ?>
<?php endif; ?>
<img id="photo-display" src="<?= $img_path ?>" alt="Image"
style="width:100%;max-width:945px;min-width:100%;border:0;" />
<?php endif; ?>
<?php else: ?>
<a href="#" rel="lightbox[gallery]">
<img id="photo-display" src="/plugin/img/photo.gif" alt="Image"
style="width:100%; max-width:945px; border:0;">
</a>
<a href="#" rel="lightbox[gallery]">
<img id="photo-display" src="/plugin/img/photo.gif" alt="Image"
style="width:100%; max-width:945px; border:0;">
</a>
<?php endif; ?>
</div>
<?php if (empty($data['confirm_doc_img_url'])): ?>
<div id="div_fild_upload" class="text-end">
<label class="btn btn-sm btn-outline-secondary mb-0">
<i class="fa fa-upload me-1"></i> 업로드
<input type="file" id="docu_file" name="docu_file" class="d-none"
onchange="myfile_onchange(event)" />
</label>
</div>
<div id="div_fild_upload" class="text-end">
<label class="btn btn-sm btn-outline-secondary mb-0">
<i class="fa fa-upload me-1"></i> 업로드
<input type="file" id="docu_file" name="docu_file" class="d-none"
onchange="myfile_onchange(event)" />
</label>
</div>
<?php endif; ?>
</td>
@@ -721,11 +721,11 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
name="fax_conf_res_d11">
<option value="">-선택-</option>
<?php foreach ($codes as $c): ?>
<?php if ($c['category'] === "CONFIRM_RESULT_D11"): ?>
<option value="<?= $c['cd'] ?>" <?= ($c['cd'] === $data['result_d11']) ? 'selected' : '' ?>>
<?= $c['cd_nm'] ?>
</option>
<?php endif; ?>
<?php if ($c['category'] === "CONFIRM_RESULT_D11"): ?>
<option value="<?= $c['cd'] ?>" <?= ($c['cd'] === $data['result_d11']) ? 'selected' : '' ?>>
<?= $c['cd_nm'] ?>
</option>
<?php endif; ?>
<?php endforeach; ?>
</select>
</td>
@@ -768,23 +768,23 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
}
?>
<td style="border: 0; padding:2px 0 2px 0; height:18px;">
<div class="form-check d-flex align-items-center mb-0">
<input class="form-check-input mt-0" type="checkbox"
id="comment_<?= $key ?>" disabled>
<label class="form-check-label ms-1 small"
for="price_ignore1">
<?= $value['cd_nm'] ?>
</label>
</div>
</td>
<td style="border: 0; padding:2px 0 2px 0; height:18px;">
<div class="form-check d-flex align-items-center mb-0">
<input class="form-check-input mt-0" type="checkbox"
id="comment_<?= $key ?>" disabled>
<label class="form-check-label ms-1 small"
for="price_ignore1">
<?= $value['cd_nm'] ?>
</label>
</div>
</td>
<?php $nCnt++;
<?php $nCnt++;
} ?>
<?php if ($nCnt > 0) { ?>
</tr>
</tr>
<?php } ?>
</table>
</td>
@@ -898,11 +898,11 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
<select class="form-select" name="tel_agree" id="tel_agree">
<option value="">-선택-</option>
<?php foreach ($codes as $c): ?>
<?php if ($c['category'] === "CONFIRM_RESULT_T11"): ?>
<option value="<?= $c['cd'] ?>" <?php if ($c['cd'] === $data['tel_agree']) {
echo "selected";
} ?>><?= $c['cd_nm'] ?></option>
<?php endif; ?>
<?php if ($c['category'] === "CONFIRM_RESULT_T11"): ?>
<option value="<?= $c['cd'] ?>" <?php if ($c['cd'] === $data['tel_agree']) {
echo "selected";
} ?>><?= $c['cd_nm'] ?></option>
<?php endif; ?>
<?php endforeach; ?>
</select>
</td>
@@ -928,15 +928,15 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
<!-- 기존 업로드된 파일 정보 -->
<?php if (!empty($tel)) { ?>
<div class="mb-2 small">
<div class="d-flex align-items-center gap-2 flex-wrap">
<a href="<?= $tel['file_url'] ?? '#' ?>" class="text-decoration-none">
<i class="fa fa-file-audio-o me-1"></i><?= $tel['file_name'] ?>
</a>
<span class="badge text-dark"><?= $tel['file_size'] ?>kb</span>
<span class="text-muted"><?= $tel['insert_tm'] ?></span>
</div>
<div class="mb-2 small">
<div class="d-flex align-items-center gap-2 flex-wrap">
<a href="<?= $tel['file_url'] ?? '#' ?>" class="text-decoration-none">
<i class="fa fa-file-audio-o me-1"></i><?= $tel['file_name'] ?>
</a>
<span class="badge text-dark"><?= $tel['file_size'] ?>kb</span>
<span class="text-muted"><?= $tel['insert_tm'] ?></span>
</div>
</div>
<?php } ?>
<!-- 파일 업로드 -->
@@ -1060,11 +1060,11 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
<td class="d-flex gap-2">
<select class="form-select" name="tel_fail_cause" id="tel_fail_cause">
<?php foreach ($codes as $c): ?>
<?php if ($c['category'] === "TEL_FAIL_CAUSE"): ?>
<option value="<?= $c['cd'] ?>" <?php if ($c['cd'] === $data['tel_fail_cause']) {
echo 'selected';
} ?>><?= $c['cd_nm'] ?></option>
<?php endif; ?>
<?php if ($c['category'] === "TEL_FAIL_CAUSE"): ?>
<option value="<?= $c['cd'] ?>" <?php if ($c['cd'] === $data['tel_fail_cause']) {
echo 'selected';
} ?>><?= $c['cd_nm'] ?></option>
<?php endif; ?>
<?php endforeach; ?>
</select>
@@ -1076,10 +1076,10 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
<?php
if ($usr_level == '1') {
?>
<button class="btn btn-sm btn-light" style="white-space: nowrap;" onclick="saveTel();">
저장
</button>
<?php
<button class="btn btn-sm btn-light" style="white-space: nowrap;" onclick="saveTel();">
저장
</button>
<?php
}
?>
</div>
@@ -1101,77 +1101,77 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
<!-- 좌측 : 이미지 -->
<td>
<?php if (!empty($data['cert_register'])): ?>
<?php if ($data['cert_register_save_yn'] == 'Y'): ?>
<?php if (strtolower($file_pdf) == 'pdf') { ?>
<iframe src="<?= $server_addr ?><?= $regi_pdf_path ?>" frameborder="0"
style="padding: 10px 0;width:100%; height:800px;"></iframe><br />
<?php } else { ?>
<div id="regi_file_dis" style="padding: 10px 0px; height: 730px; overflow-y: auto;">
<?php if (empty($arrRegist)) { ?>
<img id="photo-display2" src="/img/photo.gif" alt="Image"
style="width:100%;max-width:945px;min-width:100%;border:0;" />
<?php } else {
foreach ($arrRegist as $row) {
$img_path = $row['file_path'] . $row['file_name']; ?>
<a href="<?= $img_path ?>" class="default_val" target="_blank"
rel="lightbox[gallery1]">
<img id="photo-display2" src="'.$img_path.'" alt="Image"
style="width:100%;max-width:945px;min-width:100%;border:0;" />
</a>
<?php }
} ?>
</div><br />
<?php } ?>
<?php else: ?>
<?php if (strtolower($file_pdf) == 'pdf') { ?>
<iframe src="<?= $regi_pdf_path ?>" frameborder="0"
style="padding: 10px 0;width:100%; height:800px;"></iframe><br>
<?php } else { ?>
<div id="regi_file_dis" style="padding: 10px 0px; height: 730px; overflow-y: auto;">
<?php if (empty($arr_cert_register)) { ?>
<img id="photo-display2" src="/plugin/img/photo.gif" alt="Image"
style="width:100%;max-width:945px;min-width:100%;border:0;" />
<?php } else {
foreach ($arr_cert_register as $img_path) { ?>
<a href="<?= $img_path ?>" class="default_val" target="_blank"
rel="lightbox[gallery1]">
<img id="photo-display2" src="'.$img_path.'" alt="Image"
style="width:100%;max-width:945px;min-width:100%;border:0;" />
</a>
<?php }
} ?>
</div><br />
<?php } ?>
<?php endif; ?>
<?php if ($data['cert_register_save_yn'] == 'Y'): ?>
<?php if (strtolower($file_pdf) == 'pdf') { ?>
<iframe src="<?= $server_addr ?><?= $regi_pdf_path ?>" frameborder="0"
style="padding: 10px 0;width:100%; height:800px;"></iframe><br />
<?php } else { ?>
<div id="regi_file_dis" style="padding: 10px 0px; height: 730px; overflow-y: auto;">
<?php if (empty($arrRegist)) { ?>
<img id="photo-display2" src="/img/photo.gif" alt="Image"
style="width:100%;max-width:945px;min-width:100%;border:0;" />
<?php } else {
foreach ($arrRegist as $row) {
$img_path = $row['file_path'] . $row['file_name']; ?>
<a href="<?= $img_path ?>" class="default_val" target="_blank"
rel="lightbox[gallery1]">
<img id="photo-display2" src="'.$img_path.'" alt="Image"
style="width:100%;max-width:945px;min-width:100%;border:0;" />
</a>
<?php }
} ?>
</div><br />
<?php } ?>
<?php else: ?>
<?php if (strtolower($file_pdf) == 'pdf') { ?>
<iframe src="<?= $regi_pdf_path ?>" frameborder="0"
style="padding: 10px 0;width:100%; height:800px;"></iframe><br>
<?php } else { ?>
<div id="regi_file_dis" style="padding: 10px 0px; height: 730px; overflow-y: auto;">
<?php if (empty($arr_cert_register)) { ?>
<img id="photo-display2" src="/plugin/img/photo.gif" alt="Image"
style="width:100%;max-width:945px;min-width:100%;border:0;" />
<?php } else {
foreach ($arr_cert_register as $img_path) { ?>
<a href="<?= $img_path ?>" class="default_val" target="_blank"
rel="lightbox[gallery1]">
<img id="photo-display2" src="'.$img_path.'" alt="Image"
style="width:100%;max-width:945px;min-width:100%;border:0;" />
</a>
<?php }
} ?>
</div><br />
<?php } ?>
<?php endif; ?>
<?php else: ?>
<?php if (empty($regist)) {
<?php if (empty($regist)) {
$regi_img_path = '/plugin/img/photo.gif';
} else {
if (empty($regist['file_path']) || empty($regist['file_name'])) {
$regi_img_path = '/plugin/img/photo.gif';
} else {
if (empty($regist['file_path']) || empty($regist['file_name'])) {
$regi_img_path = '/plugin/img/photo.gif';
} else {
$regi_img_path = $regist['file_path'] . $regist['file_name'];
$regi_img_path = $regist['file_path'] . $regist['file_name'];
if ($regist['cloud_upload_yn'] === "Y") {
$regi_img_path = NCLOUD_OBJECT_STORAGE_URL . $regi_img_path;
}
if ($regist['cloud_upload_yn'] === "Y") {
$regi_img_path = NCLOUD_OBJECT_STORAGE_URL . $regi_img_path;
}
}
?>
<div id="regi_file_dis" style="padding: 10px 0;">
<img id="photo-display2" src="<?= $regi_img_path ?>" alt="Image"
style="width:100%;max-width:945px;min-width:100%;border:0;" />
</div>
<div id="regi_file_pdf" style="padding: 10px 0; display:none;">
<a href="<?= $regi_pdf_path ?>" class="embed"></a>
</div>
<a href="<?= $regi_img_path ?>" class="default_val" target="_blank">등기부등본
보기</a>&nbsp;&nbsp;&nbsp;
<a href="" class="default_val" target="_blank" rel="lightbox" id="hongbo"
onclick="chk_hongbo(event); return false;">홍보확인서 보기</a>
}
?>
<div id="regi_file_dis" style="padding: 10px 0;">
<img id="photo-display2" src="<?= $regi_img_path ?>" alt="Image"
style="width:100%;max-width:945px;min-width:100%;border:0;" />
</div>
<div id="regi_file_pdf" style="padding: 10px 0; display:none;">
<a href="<?= $regi_pdf_path ?>" class="embed"></a>
</div>
<a href="<?= $regi_img_path ?>" class="default_val" target="_blank">등기부등본
보기</a>&nbsp;&nbsp;&nbsp;
<a href="" class="default_val" target="_blank" rel="lightbox" id="hongbo"
onclick="chk_hongbo(event); return false;">홍보확인서 보기</a>
<?php endif; ?>
</td>
@@ -1244,18 +1244,18 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
</tr>
<?php if ($data['vrfc_type_cd'] == "N"): ?>
<tr>
<th>소유자명 확인</th>
<td>
<select class="form-select" name="ownerVerifiable" id="ownerVerifiable">
<option value="">-선택-</option>
<option value="1" <?php if ($data['owner_verifiable'] == "1")
echo "selected"; ?>>일치</option>
<option value="0" <?php if ($data['owner_verifiable'] == "0")
echo "selected"; ?>>불일치</option>
</select>
</td>
</tr>
<tr>
<th>소유자명 확인</th>
<td>
<select class="form-select" name="ownerVerifiable" id="ownerVerifiable">
<option value="">-선택-</option>
<option value="1" <?php if ($data['owner_verifiable'] == "1")
echo "selected"; ?>>일치</option>
<option value="0" <?php if ($data['owner_verifiable'] == "0")
echo "selected"; ?>>불일치</option>
</select>
</td>
</tr>
<?php endif; ?>
<tr>
<th>메모</th>
@@ -1312,14 +1312,14 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
<!-- 왼쪽 버튼 영역 -->
<?php if (empty($data['cert_register'])): ?>
<div class="d-flex gap-1">
<button class="btn btn-sm btn-outline-success" id="btnUploadModal">
<i class="fa fa-fw" aria-hidden="true"></i> 파일업로드
</button>
<!-- <button class="btn btn-sm btn-outline-secondary">
<div class="d-flex gap-1">
<button class="btn btn-sm btn-outline-success" id="btnUploadModal">
<i class="fa fa-fw" aria-hidden="true"></i> 파일업로드
</button>
<!-- <button class="btn btn-sm btn-outline-secondary">
저장
</button> -->
</div>
</div>
<?php endif; ?>
<!-- 오른쪽 버튼 영역 -->
@@ -1331,13 +1331,13 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
&& $data['stat_cd'] != '49')
|| $usr_level == '1'
): ?>
<button type="button" class="btn btn-light btn-sm" onclick="saveFinalRegi();">
최종실패
</button>
<button type="button" class="btn btn-light btn-sm" onclick="saveFinalRegi();">
최종실패
</button>
<button type="button" class="btn btn-primary btn-sm" onclick="saveRegi();">
저장
</button>
<button type="button" class="btn btn-primary btn-sm" onclick="saveRegi();">
저장
</button>
<?php endif; ?>
</div>
@@ -1361,15 +1361,15 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
<th style="text-align: center;">세부내용</th>
</tr>
<?php if (!empty($history)) { ?>
<?php foreach ($history as $h) { ?>
<tr>
<td style="text-align: center;"><?= $h['stat_cd_nm'] ?></td>
<td style="text-align: center;"><?= $h['chg_type'] ?></td>
<td style="text-align: center;"><?= $h['insert_id'] ?></td>
<td style="text-align: center;"><?= $h['insert_tm'] ?></td>
<td><?= $h['memo'] ?></td>
<?php foreach ($history as $h) { ?>
<tr>
<td style="text-align: center;"><?= $h['stat_cd_nm'] ?></td>
<td style="text-align: center;"><?= $h['chg_type'] ?></td>
<td style="text-align: center;"><?= $h['insert_id'] ?></td>
<td style="text-align: center;"><?= $h['insert_tm'] ?></td>
<td><?= $h['memo'] ?></td>
<?php } ?>
<?php } ?>
<?php } ?>
</table>
</div>
@@ -1726,31 +1726,7 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
});
dz.on("queuecomplete", function () {
let result = lastUploadResponse;
if (typeof result === "string") {
try {
result = JSON.parse(result);
} catch (e) {
result = { code: "-1", msg: result };
}
}
if (String(result.code) === "0") {
swal.fire({
title: "업로드가 완료되었습니다.",
icon: "success",
});
location.reload();
return;
}
const msg = result.msg ? result.msg : "업로드 실패";
swal.fire({
title: msg,
icon: "error",
draggable: true
});
location.reload();
});
dz.on("successmultiple", function () {
@@ -2525,14 +2501,14 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
}
<?php if ($data['vrfc_type_cd'] == "N") { ?>
if (frm.ownerVerifiable.value == "") {
swal.fire({
text: "소유자명 확인 결과를 선택해 주세요",
icon: "warning"
});
frm.ownerVerifiable.focus();
return false;
}
if (frm.ownerVerifiable.value == "") {
swal.fire({
text: "소유자명 확인 결과를 선택해 주세요",
icon: "warning"
});
frm.ownerVerifiable.focus();
return false;
}
<?php } ?>
if (frm.reg_conf_yn_2.value == "20000") {

View File

@@ -1429,31 +1429,7 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
});
dz.on("queuecomplete", function () {
let result = lastUploadResponse;
if (typeof result === "string") {
try {
result = JSON.parse(result);
} catch (e) {
result = { code: "-1", msg: result };
}
}
if (String(result.code) === "0") {
swal.fire({
title: "업로드가 완료되었습니다.",
icon: "success",
});
location.reload();
return;
}
const msg = result.msg ? result.msg : "업로드 실패";
swal.fire({
title: msg,
icon: "error",
draggable: true
});
location.reload();
});
dz.on("successmultiple", function () {

View File

@@ -26,6 +26,9 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
$file_pdf = 'pdf';
}
$regi_pdf_path = $arr_cert_register[0];
if ($regist['cloud_upload_yn'] == 'Y') {
$regi_pdf_path = NCLOUD_OBJECT_STORAGE_URL . $regi_pdf_path;
}
} else {
if (empty($regist['file_name'])) {
@@ -35,6 +38,9 @@ if (!empty($data['cert_register']) && $data['cert_register_save_yn'] != 'Y') { /
$file_pdf = substr($regist['file_name'], -3);
$regi_pdf_path = $regist['file_path'] . $regist['file_name']; //등기부등본
if ($regist['cloud_upload_yn'] == 'Y') {
$regi_pdf_path = NCLOUD_OBJECT_STORAGE_URL . $regi_pdf_path;
}
}
}
@@ -94,7 +100,7 @@ if (!empty($data['confirm_doc_img_url']) && $data['confirm_doc_img_url_save_yn']
<div class="col-12">
<div class="main-card mb-3 card">
<div class="card-body">
<form id="rcptFrm" onsubmit="return false">
<form id="rcptFrm" name="rcptFrm" onsubmit="return false">
<input type="hidden" name="reg_chk_val" value="<?= $data['rgbk_confirm'] ?>" />
<input type="hidden" name="atcl_vrtc_type" id="atcl_vrtc_type"
value="<?= $data['vrfc_type_cd'] ?>" />
@@ -150,6 +156,7 @@ if (!empty($data['confirm_doc_img_url']) && $data['confirm_doc_img_url_save_yn']
}
}
echo '</div><br>';
}
}
} else {
@@ -170,8 +177,10 @@ if (!empty($data['confirm_doc_img_url']) && $data['confirm_doc_img_url_save_yn']
}
?>
<iframe src="<?= $regi_img_path ?>" frameborder="0"
style="padding: 10px 0;width:100%; height:1200px;"></iframe><br>
<img src="<?= $regi_img_path ?>" alt="">
<!-- <iframe src="<?= $regi_img_path ?>" frameborder="0"
style="padding: 10px 0;width:100%; height:1200px;"></iframe><br> -->
<br>
<a href="<?= $regi_pdf_path ?>" class="default_val" target="_blank">등기부등본
보기</a>&nbsp;&nbsp;&nbsp;
@@ -390,62 +399,64 @@ if (!empty($data['confirm_doc_img_url']) && $data['confirm_doc_img_url_save_yn']
</tr>
</table>
<?php endif; ?>
<?php if (in_array($detail_hscp['villaType'], $villa_rlet_type_cd)): ?>
<table width="100%">
<tr>
<th>단지명</th>
<td>
<?= $detail_hscp['villaName']; ?>
</td>
<th>단지타입명</th>
<td>
<?= $detail_hscp['villaTypeName']; ?>
</td>
</tr>
<tr>
<th>소재법정동번호</th>
<td colspan="3">
<?= $detail_hscp['cortarNo']; ?>
</td>
</tr>
<tr>
<th>소재 주소(전체)</th>
<td colspan="3">
<?= $detail_hscp['addr']; ?>
</td>
</tr>
<tr>
<th>주소(광역시/도)</th>
<td>
<?= $detail_hscp['city']; ?>
</td>
<th>주소(시군구)</th>
<td>
<?= $detail_hscp['dvsn']; ?>
</td>
</tr>
<tr>
<th>주소(읍면동)</th>
<td>
<?= $detail_hscp['sec']; ?>
</td>
<th>소재 동이하 상세주소</th>
<td>
<?= $detail_hscp['dtlAddr']; ?>
</td>
</tr>
<tr>
<th>단지 총 세대수</th>
<td>
<?= $detail_hscp['totHsehCnt']; ?>
</td>
<th>단지 총 동수</th>
<td>
<?= $detail_hscp['totDongCnt']; ?>
</td>
</tr>
<?php if (!empty($detail_hscp['villaType'])): ?>
<?php if (in_array($detail_hscp['villaType'], $villa_rlet_type_cd)): ?>
<table width="100%">
<tr>
<th>단지명</th>
<td>
<?= $detail_hscp['villaName']; ?>
</td>
<th>단지타입명</th>
<td>
<?= $detail_hscp['villaTypeName']; ?>
</td>
</tr>
<tr>
<th>소재법정동번호</th>
<td colspan="3">
<?= $detail_hscp['cortarNo']; ?>
</td>
</tr>
<tr>
<th>소재 주소(전체)</th>
<td colspan="3">
<?= $detail_hscp['addr']; ?>
</td>
</tr>
<tr>
<th>주소(광역시/도)</th>
<td>
<?= $detail_hscp['city']; ?>
</td>
<th>주소(시군구)</th>
<td>
<?= $detail_hscp['dvsn']; ?>
</td>
</tr>
<tr>
<th>주소(읍면동)</th>
<td>
<?= $detail_hscp['sec']; ?>
</td>
<th>소재 동이하 상세주소</th>
<td>
<?= $detail_hscp['dtlAddr']; ?>
</td>
</tr>
<tr>
<th>단지 총 세대수</th>
<td>
<?= $detail_hscp['totHsehCnt']; ?>
</td>
<th>단지 총 동수</th>
<td>
<?= $detail_hscp['totDongCnt']; ?>
</td>
</tr>
</table>
</table>
<?php endif; ?>
<?php endif; ?>
</td>
</tr>
@@ -699,6 +710,8 @@ if (!empty($data['confirm_doc_img_url']) && $data['confirm_doc_img_url_save_yn']
<td>
<table class="w-100 tbl_basic2 table-bordered">
<tr>
<input type="hidden" name="arr_uncnfrm_status"
id="arr_uncnfrm_status" />
<?php
$checks = explode('|', $data['comment']);
// if (in_array($confirm['code_d11'], ['20011', '20012'])) {
@@ -851,7 +864,8 @@ if (!empty($data['confirm_doc_img_url']) && $data['confirm_doc_img_url_save_yn']
<div class="form-check align-items-center mb-0"
id="img_chk_chk3_area">
<input class="form-check-input" type="checkbox"
id="img_chk_chk3">
name="img_chk_chk" id="img_chk_chk3"
onclick="check_only(this)">
<label class="form-check-label"
for="img_chk_chk3">열람</label>
</div>
@@ -859,7 +873,8 @@ if (!empty($data['confirm_doc_img_url']) && $data['confirm_doc_img_url_save_yn']
<div class="form-check align-items-center mb-0"
id="img_chk_chk4_area">
<input class="form-check-input" type="checkbox"
id="img_chk_chk4">
name="img_chk_chk" id="img_chk_chk4"
onclick="check_only(this)">
<label class="form-check-label"
for="img_chk_chk4">소유자명 확인</label>
</div>
@@ -868,7 +883,8 @@ if (!empty($data['confirm_doc_img_url']) && $data['confirm_doc_img_url_save_yn']
<div class="form-check align-items-center mb-0"
id="img_chk_chk5_area">
<input class="form-check-input" type="checkbox"
id="img_chk_chk5">
name="img_chk_chk" id="img_chk_chk5"
onclick="check_only(this)">
<label class="form-check-label"
for="img_chk_chk5">리얼탑 열람</label>
</div>
@@ -876,7 +892,8 @@ if (!empty($data['confirm_doc_img_url']) && $data['confirm_doc_img_url_save_yn']
<div class="form-check align-items-center mb-0"
id="img_chk_chk6_area">
<input class="form-check-input" type="checkbox"
id="img_chk_chk6">
name="img_chk_chk" id="img_chk_chk6"
onclick="check_only(this)">
<label class="form-check-label"
for="img_chk_chk6">리얼탑 기열람</label>
</div>
@@ -884,7 +901,8 @@ if (!empty($data['confirm_doc_img_url']) && $data['confirm_doc_img_url_save_yn']
<div class="form-check align-items-center mb-0"
id="img_chk_chk2_area">
<input class="form-check-input" type="checkbox"
id="img_chk_chk2">
name="img_chk_chk" id="img_chk_chk2"
onclick="check_only(this)">
<label class="form-check-label"
for="img_chk_chk2">등기소</label>
</div>
@@ -893,7 +911,7 @@ if (!empty($data['confirm_doc_img_url']) && $data['confirm_doc_img_url_save_yn']
<div class="form-check align-items-center mb-0"
id="noimg_chk_chk_area">
<input class="form-check-input mt-0" type="checkbox"
id="noimg_chk_chk">
name="noimg_chk_chk" id="noimg_chk_chk">
<label class="form-check-label small"
for="noimg_chk_chk">
이미지 파일 없음
@@ -1341,6 +1359,15 @@ if (!empty($data['confirm_doc_img_url']) && $data['confirm_doc_img_url_save_yn']
});
function check_only(chk) {
var obj = document.getElementsByName("img_chk_chk");
for (var i = 0; i < obj.length; i++) {
if (obj[i] != chk) {
obj[i].checked = false;
}
}
}
// 이미지회전
function faximage_rotate(degress) {
@@ -1554,6 +1581,11 @@ if (!empty($data['confirm_doc_img_url']) && $data['confirm_doc_img_url_save_yn']
var trade_type = "<?= $data['trade_type_cd'] ?>";
var vrfc_type = "<?= $data['vrfc_type_cd'] ?>";
var chkBox = $('input:checkbox[name=img_chk_chk]').is(':checked'); //등기소, 리얼탑 열람, 리얼탑 기열람, 열람
var cert_register = "<?= $data['cert_register'] ?>"; //등기부등본 url이 있을경우
var filePdf = '<?= $file_pdf ?>';
if (vrfc_type == "M") {
// 검증방식이 모바일이면 파일체크는 하지않고 열람인지 등기소, 리얼탑 열람, 리얼탑 기열람인지만 체크함
if (chkBox == false) {
@@ -1685,23 +1717,79 @@ if (!empty($data['confirm_doc_img_url']) && $data['confirm_doc_img_url_save_yn']
}
// 다중체크된거 가져오기
var arr_uncnfrm_status = "";
var cnt = 0;
$('input:checkbox[name="cert_uncnfrm_status[]"]').each(function () {
if ($(this).is(':checked')) {
if (cnt == 0) {
arr_uncnfrm_status += $(this).val();
} else {
arr_uncnfrm_status += "|" + ($(this).val());
}
cnt++;
}
var arr_uncnfrm_status = [];
$('input:checkbox[name="cert_uncnfrm_status[]"]:checked').each(function () {
arr_uncnfrm_status.push($(this).val());
});
$('#arr_uncnfrm_status').val(arr_uncnfrm_status);
var uncnfrm_status_str = arr_uncnfrm_status.join('|');
console.log('====')
console.log(uncnfrm_status_str)
console.log('====')
$('#arr_uncnfrm_status').val(uncnfrm_status_str);
}
console.log(frm.serialize())
swal.fire({
text: "저장 하시겠습니까?",
type: "warning",
showCancelButton: true,
confirmButtonText: "예",
cancelButtonText: "아니오",
closeOnConfirm: false,
closeOnCancel: true,
confirmButtonColor: "#3085d6",
cancelButtonColor: "#d33",
}).then((result) => {
if (result.isConfirmed) {
$.ajax({
url: '/m705/m705a/saveRegi',
contentType: 'application/x-www-form-urlencoded;charset=UTF-8',
method: 'POST',
data: $("#rcptFrm").serialize(),
beforeSend: function () {
blockUI.blockPage({
message: tpl
})
},
complete: function () {
blockUI.unblockPage()
},
error: function (xhr, error, thrown) {
blockUI.unblockPage()
var msg = "";
if (xhr.responseText != null) {
msg = xhr.responseText
} else {
msg = "잠시후 다시 시도해 주세요."
}
Swal.fire({
title: msg,
icon: "error"
})
},
success: function (result) {
if (result.code == '0') {
Swal.fire({
title: '정상 처리되었습니다.',
icon: "success"
})
location.reload();
} else {
Swal.fire({
title: result.msg,
icon: "error"
})
}
}
});
}
});
}