v1.4.3
- [CUSTOMER] [EXPORT] 버튼 수정 - [LOGIN] 엔터로도 로그인 - [EXPORT] Customer Export : Acc 추가 - [EXPENSE] 화면 줄일 때 버튼, 서머리 화면에 다 안 들어가는 문제 수정 - [DRIVER] DRIVER 리스트에 TYPE 추가
This commit is contained in:
parent
139113d1cf
commit
3c82cdd594
|
|
@ -1385,6 +1385,12 @@ a.txt-logout:hover{
|
|||
border: 0px;
|
||||
}
|
||||
|
||||
/* 첫 줄(버튼 줄) 테두리 제거 + 칸 사이 여백 */
|
||||
.form-config-search table.td-search tr:first-child td{
|
||||
border: 0px;
|
||||
padding: 10px 8px;
|
||||
}
|
||||
|
||||
|
||||
.form-config-search table.td-search .td-title{
|
||||
min-width: 100px;
|
||||
|
|
@ -2335,9 +2341,13 @@ tr.status-X {
|
|||
============================ */
|
||||
.radio-segment {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: 5px;
|
||||
height: 40px;
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 10px;
|
||||
overflow: hidden;
|
||||
border-radius: 999px; /* 바깥 테두리 알약 모양 */
|
||||
padding: 5px; /* 상하좌우 여백 균등 (gap과 동일) */
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
|
|
@ -2358,11 +2368,12 @@ tr.status-X {
|
|||
text-align: center;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
padding: 8px 0;
|
||||
padding: 5px 16px;
|
||||
background: #e7e7e7;
|
||||
color: #333;
|
||||
font-weight: 500;
|
||||
height: 100%;
|
||||
border-radius: 999px; /* 알약 모양 */
|
||||
transition: background 0.45s ease;
|
||||
}
|
||||
|
||||
.radio-segment input[type="radio"]:checked + span {
|
||||
|
|
@ -2370,13 +2381,12 @@ tr.status-X {
|
|||
color: #333;
|
||||
}
|
||||
|
||||
/* horizontal radius */
|
||||
.radio-segment label:first-child span {
|
||||
border-radius: 5px 0 0 5px;
|
||||
/* 마우스 오버 */
|
||||
.radio-segment span:hover {
|
||||
background: #f0f0f0;
|
||||
}
|
||||
|
||||
.radio-segment label:last-child span {
|
||||
border-radius: 0 5px 5px 0;
|
||||
.radio-segment input[type="radio"]:checked + span:hover {
|
||||
background: #fff0b8;
|
||||
}
|
||||
|
||||
/* check box */
|
||||
|
|
@ -2450,18 +2460,20 @@ tr.status-X {
|
|||
.radio-segment {
|
||||
flex-direction: column;
|
||||
width: 100%;
|
||||
height: auto;
|
||||
gap: 6px; /* 세로로 쌓일 때 버튼 사이 간격 */
|
||||
border-radius: 16px; /* 세로일 땐 살짝만 둥글게 */
|
||||
padding: 8px;
|
||||
}
|
||||
|
||||
.radio-segment label {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.radio-segment label:first-child span {
|
||||
border-radius: 5px 5px 0 0;
|
||||
}
|
||||
|
||||
.radio-segment label:last-child span {
|
||||
border-radius: 0 0 5px 5px;
|
||||
/* 세로일 때 각 버튼은 살짝 둥근 알약 유지 */
|
||||
.radio-segment span {
|
||||
border-radius: 20px;
|
||||
padding: 8px 16px;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -384,7 +384,7 @@ $(document).ready(function(){
|
|||
</td>
|
||||
|
||||
<td style="text-align:right;">
|
||||
<div class="cstatus-segment">
|
||||
<div class="radio-segment">
|
||||
<label>
|
||||
<input type="radio" name="cstatus" value="A" <?=($cstatus == "A")?"checked":"";?>>
|
||||
<span> Active </span>
|
||||
|
|
@ -403,7 +403,7 @@ $(document).ready(function(){
|
|||
</td>
|
||||
|
||||
<td style="text-align:left; padding-left:10px;">
|
||||
<div class="cistop-segment">
|
||||
<div class="radio-segment">
|
||||
<label>
|
||||
<input type="radio" name="cistop" value="A" <?=($cistop == "A")?"checked":"";?>>
|
||||
<span> Top </span>
|
||||
|
|
@ -514,80 +514,4 @@ $(document).ready(function(){
|
|||
|
||||
<!-- End of Modal -->
|
||||
|
||||
<style>
|
||||
.cstatus-segment,
|
||||
.cistop-segment {
|
||||
display: flex; /* inline-flex 말고 flex 로 */
|
||||
border: 1px solid #ccc;
|
||||
border-radius: 10px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
/* 라벨 전체가 버튼처럼 동작 + 같은 너비 */
|
||||
.cstatus-segment label,
|
||||
.cistop-segment label {
|
||||
margin: 0;
|
||||
cursor: pointer;
|
||||
flex: 1 1 0; /* 3개 버튼을 동일 너비로 나눔 */
|
||||
}
|
||||
|
||||
.cstatus-segment input[type="radio"],
|
||||
.cistop-segment input[type="radio"] {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.cstatus-segment span,
|
||||
.cistop-segment span {
|
||||
display: block;
|
||||
text-align: center;
|
||||
padding: 8px 0; /* 좌우 padding 빼고, 너비는 flex가 담당 */
|
||||
background: #e7e7e7;
|
||||
color: #333;
|
||||
font-weight: 500;
|
||||
}
|
||||
|
||||
.cstatus-segment input[type="radio"]:checked + span,
|
||||
.cistop-segment input[type="radio"]:checked + span {
|
||||
background: #ffca1a;
|
||||
color: #333;
|
||||
}
|
||||
|
||||
/* 가로일 때 border-radius (좌우) */
|
||||
.cstatus-segment label:first-child span,
|
||||
.cistop-segment label:first-child span {
|
||||
border-radius: 5px 0 0 5px;
|
||||
}
|
||||
|
||||
.cstatus-segment label:last-child span,
|
||||
.cistop-segment label:last-child span {
|
||||
border-radius: 0 5px 5px 0;
|
||||
}
|
||||
|
||||
/* 모바일. 너비는 나중에 조절 */
|
||||
@media (max-width: 768px) {
|
||||
.cstatus-segment,
|
||||
.cistop-segment {
|
||||
flex-direction: column; /* 세로로 쌓기 */
|
||||
width: 100%; /* td 안에서 꽉 차게 */
|
||||
}
|
||||
|
||||
.cstatus-segment label,
|
||||
.cistop-segment label {
|
||||
flex: 1 0 auto;
|
||||
width: 100%; /* 각 버튼이 컨테이너 전체 너비 사용 */
|
||||
}
|
||||
|
||||
/* 세로일 때 border-radius (위/아래) 다시 정의 */
|
||||
.cstatus-segment label:first-child span,
|
||||
.cistop-segment label:first-child span {
|
||||
border-radius: 5px 5px 0 0;
|
||||
}
|
||||
|
||||
.cstatus-segment label:last-child span,
|
||||
.cistop-segment label:last-child span {
|
||||
border-radius: 0 0 5px 5px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
<!-- 세그먼트 버튼(cstatus/cistop) 스타일은 assets/css/table-style.css 로 이동됨 -->
|
||||
|
|
@ -1,9 +1,9 @@
|
|||
<?
|
||||
|
||||
// Level 5 이하만 사용 가능
|
||||
// Level 5 <EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
$func->checkLevelModal(5);
|
||||
|
||||
// Delete 기능 제한 (Admin : 1 만 가능)
|
||||
// Delete <EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> (Admin : 1 <20><> <20><><EFBFBD><EFBFBD>)
|
||||
$permit = array("1");
|
||||
if (in_array($_SESSION['ss_LEVEL'], $permit)) {
|
||||
$setTag = "ENABLED";
|
||||
|
|
@ -46,11 +46,11 @@ $query = "SELECT COUNT(dr_uid) FROM tbl_driver
|
|||
$total_count=$jdb->rQuery($query, "record query error");
|
||||
//echo "<br><br><br><br><br>[$total_count][$query]<br>";
|
||||
|
||||
//페이징변수설정
|
||||
//<EFBFBD><EFBFBD><EFBFBD><EFBFBD>¡<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
if(!$page) $page = 1;
|
||||
|
||||
if(!$list_count) $list_count = $INIT_PAGECNT; //출력리스트 갯수
|
||||
if(!$page_count) $page_count = $INIT_PAGEVIEWCNT; //출력페이지 갯수
|
||||
if(!$list_count) $list_count = $INIT_PAGECNT; //<EFBFBD><EFBFBD>¸<EFBFBD><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD>
|
||||
if(!$page_count) $page_count = $INIT_PAGEVIEWCNT; //<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
||||
|
||||
$list_number = $total_count - (($page-1)*$list_count);
|
||||
$start_number = $list_count * ($page-1);
|
||||
|
|
@ -85,6 +85,15 @@ while($list=mysqli_fetch_array($result, MYSQLI_ASSOC)) {
|
|||
$dr_lastnameSTR = str_replace("\\", "", $dr_lastname);
|
||||
$dr_initialSTR = str_replace("\\", "", $dr_initial);
|
||||
$dr_statusSTR = $arrStatus[$dr_status];
|
||||
|
||||
// Display DR_TYPE (use $arrType mapping array if it exists, otherwise show raw value)
|
||||
if (isset($dr_type) && isset($arrType) && is_array($arrType) && isset($arrType[$dr_type])) {
|
||||
$dr_typeSTR = $arrType[$dr_type];
|
||||
} else if (isset($dr_type)) {
|
||||
$dr_typeSTR = $dr_type;
|
||||
} else {
|
||||
$dr_typeSTR = "";
|
||||
}
|
||||
|
||||
//$qry_driver = "SELECT m_firstname, m_lastname FROM tbl_member WHERE dr_uid = '$c_driveruid' ";
|
||||
//$rt_driver = $jdb->fQuery($qry_driver, "fetch query error");
|
||||
|
|
@ -103,9 +112,10 @@ while($list=mysqli_fetch_array($result, MYSQLI_ASSOC)) {
|
|||
<tr>
|
||||
<td>$list_number</td>
|
||||
<td><a onclick=\"#\" class=\"modifyMember\" data-toggle=\"modal\" data-target=\"#myModalMemberInfo\" data-id=\"$dr_uid\" style=\"cursor:pointer;cursor:hand;\"><b style=\"customer-info-detail\">$dr_initialSTR</b></a></td>
|
||||
<td>$dr_firstnameSTR</td>
|
||||
<td>$dr_lastnameSTR</td>
|
||||
<td><a onclick=\"#\" class=\"modifyMember\" data-toggle=\"modal\" data-target=\"#myModalMemberInfo\" data-id=\"$dr_uid\" style=\"cursor:pointer;cursor:hand;color:inherit;text-decoration:none;\">$dr_firstnameSTR</a></td>
|
||||
<td><a onclick=\"#\" class=\"modifyMember\" data-toggle=\"modal\" data-target=\"#myModalMemberInfo\" data-id=\"$dr_uid\" style=\"cursor:pointer;cursor:hand;color:inherit;text-decoration:none;\">$dr_lastnameSTR</a></td>
|
||||
<td>$dr_cellSTR</td>
|
||||
<td>$dr_typeSTR </td>
|
||||
<td>$dr_statusSTR </td>
|
||||
<td>$OPTIONstr</td>
|
||||
</tr>
|
||||
|
|
@ -483,14 +493,15 @@ $(document).ready(function(){
|
|||
|
||||
|
||||
<div class="wrap-overflow customer-info">
|
||||
<table class="tb-list">
|
||||
<table class="tb-list" style="table-layout:fixed; width:100%;">
|
||||
<tr>
|
||||
<th>No</th>
|
||||
<th class="td-restaurant">Initial</th>
|
||||
<th class="td-restaurant">First Name</th>
|
||||
<th class="td-restaurant">Last Name</th>
|
||||
<th class="th-width-phone">Cell</th>
|
||||
<th>Status</th>
|
||||
<th class="td-restaurant" style="width:14%;">Initial</th>
|
||||
<th class="td-restaurant" style="width:14%;">First Name</th>
|
||||
<th class="td-restaurant" style="width:14%;">Last Name</th>
|
||||
<th class="th-width-phone" style="width:14%;">Cell</th>
|
||||
<th style="width:14%;">Type</th>
|
||||
<th style="width:14%;">Status</th>
|
||||
<th>Option</th>
|
||||
</tr>
|
||||
|
||||
|
|
@ -732,4 +743,4 @@ $(document).ready(function(){
|
|||
select('#add-acct-staff-modal #acct-staff-type').value = event.relatedTarget.getAttribute('data-add-acct-staff-type')
|
||||
})
|
||||
|
||||
</script>
|
||||
</script>
|
||||
|
|
@ -10,7 +10,7 @@ $func->checkLevelModal(7);
|
|||
|
||||
$customer_cnt = 1;
|
||||
$customerSTR = "<tr>";
|
||||
foreach ($customerArray AS $key=>$value)
|
||||
foreach ($customerArray AS $key=>$value)
|
||||
{
|
||||
//echo "[$key][$value]"; => [0][Waiting][1][Confirmed][E][Declined]...
|
||||
|
||||
|
|
@ -50,6 +50,10 @@ $(document).ready(function(){
|
|||
presetPL.forEach(col => $('#customer_'+col).prop('checked', true));
|
||||
}
|
||||
|
||||
if(type == "ACC"){
|
||||
presetACC.forEach(col => $('#customer_'+col).prop('checked', true));
|
||||
}
|
||||
|
||||
if(type == "ALL"){
|
||||
$('#checkboxcustomer input:checkbox:not(:disabled)').prop('checked', true);
|
||||
}
|
||||
|
|
@ -76,6 +80,8 @@ $(document).ready(function(){
|
|||
|
||||
const presetCS = <?=json_encode(array_keys($customerArray_cs))?>;
|
||||
const presetPL = <?=json_encode(array_keys($customerArray_pl))?>;
|
||||
const presetACC = <?=json_encode(array_keys($customerArray_acc))?>;
|
||||
|
||||
</script>
|
||||
|
||||
|
||||
|
|
@ -117,6 +123,7 @@ const presetPL = <?=json_encode(array_keys($customerArray_pl))?>;
|
|||
<div class="radio-segment" style="margin:4px;">
|
||||
<label><input type="radio" name="columnPreset" value="CS"><span>CS</span></label>
|
||||
<label><input type="radio" name="columnPreset" value="PL"><span>PL</span></label>
|
||||
<label><input type="radio" name="columnPreset" value="ACC"><span>ACC</span></label>
|
||||
<label><input type="radio" name="columnPreset" value="ALL" checked><span>ALL</span></label>
|
||||
<label><input type="radio" name="columnPreset" value="CLEAR"><span>Clear</span></label>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -337,6 +337,39 @@ addLog("add", "EXPENSE LIST", "VIEW", $lguserid, "report_expense", $lgno);
|
|||
.sumcard:hover{ background:#f3f7f4 !important; box-shadow:0 2px 10px rgba(16,24,40,0.10); }
|
||||
.sumcard-strong:hover{ background:#e4efe7 !important; box-shadow:0 2px 10px rgba(46,83,64,0.16); }
|
||||
.sumcard-gas:hover{ background:#fdecd9 !important; box-shadow:0 2px 10px rgba(245,130,31,0.20); }
|
||||
|
||||
/* ===== 반응형 검색 폼 (원본 table/td/button 태그·클래스 그대로 유지, CSS로만 좁을 때 줄바꿈) ===== */
|
||||
/* 넓은 화면: 원본과 완전히 동일 (table-search-customer-2 기본 스타일 그대로) */
|
||||
@media (max-width:900px){
|
||||
/* 좁아지면 table을 block으로 바꿔 각 셀이 세로로 쌓이게 함 */
|
||||
.exp-search-table, .exp-search-table tbody, .exp-search-table tr{
|
||||
display:block; width:100%;
|
||||
}
|
||||
.exp-search-table td{
|
||||
display:block; width:100% !important; white-space:normal !important;
|
||||
padding-left:0 !important; text-align:left !important;
|
||||
box-sizing:border-box; margin-bottom:8px;
|
||||
}
|
||||
.exp-search-table td:last-child{ margin-bottom:0; }
|
||||
.exp-search-table .qbtn{ margin-bottom:6px; }
|
||||
}
|
||||
|
||||
/* ===== 반응형 요약 카드 (넓으면 연산기호 포함 한 줄, 좁으면 접힘) ===== */
|
||||
.sumcard-wrap{ width:100%; }
|
||||
/* 기본: flex 한 줄 + 연산기호 표시 */
|
||||
.sumcard-row{ display:flex; gap:14px; align-items:center; justify-content:flex-start; flex-wrap:nowrap; }
|
||||
/* JS가 넘침 감지 시: grid로 접히고 연산기호 숨김 */
|
||||
.sumcard-row.is-wrapped{
|
||||
display:grid;
|
||||
grid-template-columns:repeat(auto-fill, minmax(172px, 1fr));
|
||||
align-items:stretch;
|
||||
justify-content:start;
|
||||
}
|
||||
.sumcard-row.is-wrapped .op-sign{ display:none !important; }
|
||||
.sumcard-row.is-wrapped .sumcard{ width:auto !important; }
|
||||
@media (max-width:560px){
|
||||
.sumcard-row.is-wrapped{ grid-template-columns:repeat(auto-fill, minmax(140px, 1fr)); }
|
||||
}
|
||||
</style>
|
||||
|
||||
<?php /* 검색 폼은 아래 요약 영역 오른쪽으로 이동됨 */ ?>
|
||||
|
|
@ -410,6 +443,23 @@ addLog("add", "EXPENSE LIST", "VIEW", $lguserid, "report_expense", $lgno);
|
|||
}
|
||||
})();
|
||||
})();
|
||||
|
||||
// ===== 카드 넘침 감지: 한 줄에 안 들어가면 grid로 접고 연산기호 숨김 =====
|
||||
(function(){
|
||||
var row = document.querySelector('.sumcard-row');
|
||||
if(!row) return;
|
||||
function checkWrap(){
|
||||
row.classList.remove('is-wrapped');
|
||||
if(row.scrollWidth > row.clientWidth + 1){
|
||||
row.classList.add('is-wrapped');
|
||||
}
|
||||
}
|
||||
checkWrap();
|
||||
var t;
|
||||
window.addEventListener('resize', function(){ clearTimeout(t); t=setTimeout(checkWrap, 80); });
|
||||
setTimeout(checkWrap, 200);
|
||||
window.addEventListener('load', checkWrap);
|
||||
})();
|
||||
});
|
||||
</script>
|
||||
|
||||
|
|
@ -451,15 +501,15 @@ addLog("add", "EXPENSE LIST", "VIEW", $lguserid, "report_expense", $lgno);
|
|||
} else {
|
||||
$inner = $s;
|
||||
}
|
||||
echo '<div style="flex:0 0 auto; width:'.$w.'; align-self:center; display:flex; align-items:center; justify-content:center; height:132px; font-size:'.$size.'; color:'.$color.'; font-weight:600;">'.$inner.'</div>';
|
||||
echo '<div class="op-sign" style="flex:0 0 auto; width:'.$w.'; align-self:center; display:flex; align-items:center; justify-content:center; height:132px; font-size:'.$size.'; color:'.$color.'; font-weight:600;">'.$inner.'</div>';
|
||||
}
|
||||
?>
|
||||
|
||||
<!-- 검색 (원본 형태) -->
|
||||
<!-- 검색 (원본 table 구조 그대로 · CSS로만 반응형 처리) -->
|
||||
<form method="post" name="form2" id="form2" action="<?=$_SERVER["PHP_SELF"]?>">
|
||||
<input type="hidden" name="view" value="report_expense">
|
||||
|
||||
<table class="table-search-customer-2" style="width:100%; margin-left:0;">
|
||||
<table class="table-search-customer-2 exp-search-table" style="width:100%; margin-left:0;">
|
||||
<tr>
|
||||
<td class="td-title" style="width:1%; white-space:nowrap;">
|
||||
<button type="button" class="qbtn" data-range="today">Today</button>
|
||||
|
|
@ -506,12 +556,11 @@ addLog("add", "EXPENSE LIST", "VIEW", $lguserid, "report_expense", $lgno);
|
|||
<span style="font-size:12px; letter-spacing:0.04em; color:#9aa0a6;">PERIOD · <?=$periodLabel?></span>
|
||||
</div>
|
||||
|
||||
<!-- 카드 섹션 전체를 가운데 정렬: 안쪽은 고정폭 기준으로 정렬 일치 -->
|
||||
<div style="display:flex; justify-content:center;">
|
||||
<div style="display:inline-block;">
|
||||
<!-- 카드 섹션 래퍼 -->
|
||||
<div class="sumcard-wrap">
|
||||
|
||||
<!-- 가로 카드 줄 (연산자 포함) -->
|
||||
<div style="display:flex; gap:14px; align-items:center; justify-content:flex-start; flex-wrap:nowrap;">
|
||||
<!-- 카드 줄 (넓으면 연산기호 표시, 좁으면 grid로 접히며 숨김) -->
|
||||
<div class="sumcard-row">
|
||||
<?php sumCard('OPENING BALANCE', $getOPENINGSUM); ?>
|
||||
<?php opSign('+'); ?>
|
||||
<?php sumCard('CASH IN', $getCASHINSUM); ?>
|
||||
|
|
@ -521,17 +570,15 @@ addLog("add", "EXPENSE LIST", "VIEW", $lguserid, "report_expense", $lgno);
|
|||
<?php sumCard('CASH RETURN', $getCASHRETURNSUM); ?>
|
||||
<?php opSign('='); ?>
|
||||
<?php sumCard('CASH ON HAND', $getENDBALANCESUM, 'strong'); ?>
|
||||
<div style="flex:0 0 auto; width:16px;"></div>
|
||||
<div class="op-sign" style="flex:0 0 auto; width:16px;"></div>
|
||||
<?php opSign(','); ?>
|
||||
<div style="flex:0 0 auto; width:4px;"></div>
|
||||
<div class="op-sign" style="flex:0 0 auto; width:4px;"></div>
|
||||
<?php sumCard('GAS', $getGASSUM, 'gas'); ?>
|
||||
</div>
|
||||
|
||||
<!-- CASH IN − CASH OUT: 왼쪽 기준 정렬이라 위 카드줄과 x좌표 일치 -->
|
||||
<div style="display:flex; align-items:flex-start;">
|
||||
<!-- OPENING(172) + gap(14) + '+'(36) + gap(14) = 236 → CASH IN 시작 -->
|
||||
<div style="flex:0 0 auto; width:236px;"></div>
|
||||
<div style="flex:0 0 auto; width:408px; position:relative;">
|
||||
<!-- CASH IN − CASH OUT -->
|
||||
<div class="diff-row" style="display:flex; align-items:flex-start; margin-top:10px;">
|
||||
<div style="flex:0 0 auto; width:100%; max-width:408px; position:relative;">
|
||||
<svg width="408" height="46" viewBox="0 0 408 46" style="display:block;">
|
||||
<path d="M86 2 L86 20 Q86 32 98 32 L306 32 Q318 32 318 20 L318 2"
|
||||
fill="none" stroke="#c4c9c5" stroke-width="2" stroke-dasharray="0.1 7" stroke-linecap="round"/>
|
||||
|
|
@ -546,7 +593,7 @@ addLog("add", "EXPENSE LIST", "VIEW", $lguserid, "report_expense", $lgno);
|
|||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- /sumcard-wrap -->
|
||||
|
||||
<div style="height:8px;"></div>
|
||||
|
||||
|
|
@ -599,4 +646,4 @@ addLog("add", "EXPENSE LIST", "VIEW", $lguserid, "report_expense", $lgno);
|
|||
|
||||
</section>
|
||||
|
||||
</main><!-- End #main -->
|
||||
</main><!-- End #main -->
|
||||
|
|
@ -73,6 +73,22 @@ $customerArray_pl = array(
|
|||
"c_email"=>"Email", "c_geolat"=>"Latitude", "c_geolon"=>"Longitude"
|
||||
);
|
||||
|
||||
// ACC 프리셋 : 전체(customerArray)에서 Region, CORSIA Date, Latitude, Longitude, Note 제외
|
||||
$customerArray_acc = array(
|
||||
"c_accountno"=>"Account No", "c_status"=>"Account Status", "c_name"=>"Restaurant Name",
|
||||
"m_currentdriverinitial"=>"Current Driver", "c_address"=>"Address",
|
||||
"c_city"=>"City", "c_postal"=>"Postal Code", "c_area"=>"Area", "c_phone"=>"Phone", "c_phoneext"=>"Ext",
|
||||
"c_cell"=>"Cell", "c_rate"=>"Rate", "c_paymenttype"=>"Payment", "c_maincontainer"=>"Main Container",
|
||||
"c_container"=>"Container Detail", "c_location"=>"Container Location", "c_schedule"=>"Pickup Schedule", "c_scheduleday"=>"Pickup Weekday",
|
||||
"c_fullcycle"=>"Cycle", "c_fullcycleforced"=>"Forced Cycle", "c_sludge"=>"Sludge",
|
||||
"c_expoilmonth"=>"Expected Oil Vol per Month", "c_hstno"=>"HST No", "c_identcode"=>"Identification Code",
|
||||
"c_comment_ri"=>"Comment", "c_contractdate"=>"Contract Date",
|
||||
"c_form_new"=>"Form", "c_form_us"=>"US", "c_form_eu"=>"EU Date", "c_contractby"=>"Contact By", "c_email"=>"Email",
|
||||
"c_removaldate"=>"Removal Date", "c_salesperson"=>"Sales Person", "c_salesmethod"=>"Sales Method", "c_salescommissiondate"=>"Sale Commission Date", "c_installdate"=>"Install Date",
|
||||
"c_fpickup"=>"First Pickup Date", "c_inactivedate"=>"Inactive Date", "c_switchformdate"=>"Switch Form Date", "c_exchangedate"=>"Container Exc. Date",
|
||||
"c_payableto"=>"Payable To", "c_paymentcycle"=>"Payment Cycle", "c_mailingaddr"=>"Mailing Address", "c_comment_ci"=>"Comment2"
|
||||
);
|
||||
|
||||
$oilhistoryArray_acc = array(
|
||||
"d_inputdate"=>"Pickup Date", "c_accountno"=>"Account No", "c_name"=>"Restaurant Name", "d_quantity"=>"Oil Quantity", "d_sludge"=>"Sludge",
|
||||
"c_rate"=>"Rate", "c_status"=>"Account Status", "c_paymentcycle"=>"Payment Cycle", "m_currentdriverinitial"=>"Current Driver",
|
||||
|
|
|
|||
|
|
@ -64,6 +64,22 @@ foreach ($arrStatus AS $key=>$value)
|
|||
}
|
||||
|
||||
|
||||
// Get Type Info (build dropdown from existing DR_TYPE values in DB)
|
||||
$query_type = "SELECT DISTINCT dr_type FROM tbl_driver WHERE dr_type <> '' ORDER BY dr_type ASC";
|
||||
$result_type = $jdb->nQuery($query_type, "type query error");
|
||||
|
||||
while ($row_type = mysqli_fetch_array($result_type, MYSQLI_ASSOC)) {
|
||||
|
||||
$typeVal = $row_type['dr_type'];
|
||||
|
||||
if ($typeVal == $dr_type) $selectTypeStr = "selected";
|
||||
else $selectTypeStr = "";
|
||||
|
||||
$dr_typeSTR .= "
|
||||
<option value='".htmlspecialchars($typeVal, ENT_QUOTES)."' $selectTypeStr>".htmlspecialchars($typeVal, ENT_QUOTES)."</option>";
|
||||
}
|
||||
|
||||
|
||||
?>
|
||||
|
||||
|
||||
|
|
@ -248,6 +264,7 @@ $(document).ready(function(){
|
|||
var dr_initial = $('#dr_initial').val();
|
||||
var dr_cell = $('#dr_cell').val();
|
||||
var dr_status = $('#dr_status').val();
|
||||
var dr_type = $('#dr_type').val();
|
||||
//alert(amodeid);
|
||||
|
||||
$.ajax({
|
||||
|
|
@ -255,7 +272,7 @@ $(document).ready(function(){
|
|||
method:"POST",
|
||||
data:{mmode:mmode, dr_uid:dr_uid,
|
||||
dr_firstname:dr_firstname, dr_lastname:dr_lastname, dr_initial:dr_initial,
|
||||
dr_cell:dr_cell, dr_status:dr_status },
|
||||
dr_cell:dr_cell, dr_status:dr_status, dr_type:dr_type },
|
||||
//beforeSend:function(){
|
||||
// $('#submitid').val("Updating");
|
||||
//},
|
||||
|
|
@ -377,6 +394,16 @@ $(document).ready(function(){
|
|||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td class="td-title-info">Type</td>
|
||||
<td class="td-text-info">
|
||||
<select id="dr_type" name="dr_type" class="custom-select" required='required' >
|
||||
<option value=''>Select</option>
|
||||
<?=$dr_typeSTR?>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
|
||||
<!--
|
||||
|
|
|
|||
|
|
@ -44,6 +44,7 @@ $columns[] = "dr_lastname";
|
|||
|
||||
$columns[] = "dr_cell";
|
||||
$columns[] = "dr_status";
|
||||
$columns[] = "dr_type";
|
||||
|
||||
|
||||
|
||||
|
|
@ -63,6 +64,7 @@ $values[] = str_replace("\\", "", trim($dr_lastname));
|
|||
$values[] = str_replace("-", "", trim($dr_cell));
|
||||
|
||||
$values[] = $dr_status;
|
||||
$values[] = $dr_type;
|
||||
|
||||
|
||||
//for ($i=0; $i < count($columns); $i++)
|
||||
|
|
|
|||
|
|
@ -183,6 +183,16 @@ if ($_SESSION['ss_LOGIN'] == 1) {
|
|||
});
|
||||
});
|
||||
}
|
||||
|
||||
$(document).ready(function() {
|
||||
$('#email, #password').on('keydown', function(e) {
|
||||
if (e.key === 'Enter' || e.keyCode === 13) {
|
||||
e.preventDefault();
|
||||
runRecaptcha();
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
</script>
|
||||
|
||||
</body>
|
||||
|
|
|
|||
Loading…
Reference in New Issue